Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблема с выборкой из базы [D7, XP]


alexsashkan ©   (2008-02-11 12:52:00) 

Уважаемые! У меня возникла ,я пытаюсь сделать выборку из одной таблицы и вбить данные в другую таблицу,но изменив значение одного поля(умножив на 1.1)
Таблицы :Avtoexpress_price,Sad_price .
Поля у них полность идентичны по названию и типу - city1(char),city2(char),Cena(real)
//-------------------------------------------
INSERT INTO Avtoexpress_price   SELECT city1, city2,Cena FROM Sad_price where Avtoexpress_price.Cena=(Sad_price*1.1)'
//--------------------
вылетает ошибка такая "the column prefix 'Avtoexpress_price'  does not match with the table name or alias name used in the query "
Подскажите где я ошибся и как написать правильно ?


Anatoly Podgoretsky   (2008-02-11 14:20:00) [1]


> Я понимаю здешние ГОСПОДА могут соревноваться долго в остроумии
> прежде чем скажут варианты которые могут предложить,а можна
> сразу по существу ???

Ты поосторожнее с обвинениями, особенно в части "по существу"


palva   (2008-02-11 14:11:00) [2]

INSERT INTO Avtoexpress_price
  SELECT city1, city2, Cena*1.1 FROM Sad_price
  WHERE
а вот здесь должно стоять условие отбора, т. е. какие записи нужно переносить. Ваше условие очень непонятное и скорее всего ошибочное. Может я не все понимаю или вы решаете задачу из какого-нибудь извращенного задачника. Если сможете сформулировать условие своими словами, тогда мы сможем подсказать.


palva   (2008-02-11 14:01:00) [3]

palva ©   (11.02.08 13:48) [9]
Что-то я то же ерунду написал. Сейчас перечитаю сабж...


alexsashkan   (2008-02-11 13:54:00) [4]


> NSERT ASELECT S.city1, S.city2, S.Cena FROM Sad_price S
>  INNER JOIN Avtoexpress_price A ON A.Cena = S.price * 1.
> 1

Очень похоже близько к истине,но результата нет вообще,нозато хоть без ошибок отрабатывает - и то хорошо


Skyle   (2008-02-11 13:49:00) [5]


> Skyle ©   (11.02.08 13:47) [8]

Нет... читать BOL мне...:(

И не лезть по вечерам отвечать на простые вопросы :(

INSERT Avtoexpress_price
SELECT S.city1, S.city2, S.Cena
FROM Sad_price S
INNER JOIN Avtoexpress_price A ON A.Cena = S.price * 1.1


palva   (2008-02-11 13:48:00) [6]

INSERT INTO Avtoexpress_price   SELECT Sad_price.city1, Sad_price.city2,Sad_price.Cena*1.1 FROM Sad_price where Avtoexpress_price.Cena=(Sad_price.cena)


Skyle   (2008-02-11 13:47:00) [7]

Видимо где-то так...

INSERT A
SELECT S.city1, S.city2, S.Cena
FROM Sad_price S
 INNER JOIN Avtoexpress_price A ON A.Cena = S.price * 1.1


И рекомендую всё же посмотреть BOL.


alexsashkan   (2008-02-11 13:42:00) [8]


> У вас какой сервер? MySQL?

нет,Microsoft SQL Server!!!


palva   (2008-02-11 13:38:00) [9]

У вас какой сервер? MySQL?


alexsashkan   (2008-02-11 13:20:00) [10]

НАРОД!!! ну подскажите как правильно формить это SQL запрос ??? темболее я коректно сформулировал задание и задал небольшую основу для запроса


alexsashkan   (2008-02-11 13:06:00) [11]


> за метлой

Я понимаю здешние ГОСПОДА могут соревноваться долго в остроумии прежде чем скажут варианты которые могут предложить,а можна сразу по существу ???


Palladin   (2008-02-11 13:05:00) [12]

за метлой


alexsashkan   (2008-02-11 13:03:00) [13]

типа такого (INSERT INTO Avtoexpress_price   SELECT Sad_price.city1, Sad_price.city2,Sad_price.Cena FROM Sad_price where Avtoexpress_price.Cena=(Sad_price.cena*1.1)) ??? всё равно та же ошибка...


Palladin   (2008-02-11 12:54:00) [14]

ты не указал в секции from название таблицы Avtoexpress_price


Наверх

Титульная страница Поиск, карта сайта Написать письмо