![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Синтаксис команды UPDATE [D5, IB6.x, ]
Лена © (2002-01-09 08:21:00)Пытаюсь сделать обновления в таблице на основе данных из другой таблицы.
В MS SQL это можно сделать, например, так:
UPDATE sostav
SET kol=kol+vrem.kol
FROM sostav inner join vrem on sostav.job_id=vrem.job_id
В IB, по-моему, нет синтаксиса "FROM".
Пробовала так:
UPDATE sostav
SET kol=kol+(select vrem.kol from vrem where sostav.job_id=vrem.job_id)
тоже безрезультатно.
Не подскажете ли, какой правильный синтаксис для этой команды?
P.S. Можно, конечно, сделать цикл по одной таблице и по каждой строке обновлять данные из другой - но это, сами понимаете, не подходит :)
Спасибо.
Лена (2002-01-09 10:11:00) [1]Заработало.
UPDATE sostav
SET sostav.kol=sostav.kol+(select vrem.kol from vrem where sostav.job_id=vrem.job_id)
Не пойму, из-за чего раньше не работало - может, потому что я разными способами пробовала и сама запуталась. Всем спасибо за помощь!
roottim (2002-01-09 09:36:00) [2]попробуй для проверки поставить вместо
select vrem.kol from vrem where sostav.job_id=vrem.job_id
select max(vrem.kol) from vrem where sostav.job_id=vrem.job_id
Praco (2002-01-09 09:24:00) [3]Должно работать. Попробуйте использовать префиксы перед всеми полями.
Alexandr (2002-01-09 09:12:00) [4]как это безрезультатно?
чего пишет?
ошибка какая?
или ничего не обновляет и ошибок не выдает?
или как?