Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.04;
Скачать: CL | DM;

Вниз

UPDATE дной таблице по друго с использованием SQL   Найти похожие ветки 

 
Виталий Панасенко   (2002-06-11 08:47) [0]

Есть две таблицы Т1 и Т2 одинаковой структуры (ID, NAME). Как при помощи SQL ОБНОВИТЬ Т1.Name по T2.Namу, связав эти таблицы по ID ? Спасибо ...


 
Johnmen ©   (2002-06-11 09:04) [1]

Никак....


 
VAleksey ©   (2002-06-11 09:09) [2]

Почему никак?

SET T1.Name=T2.Name
Where T1.Id = T2.Id

раве не так ?


 
Johnmen ©   (2002-06-11 09:19) [3]

>VAleksey © (11.06.02 09:09)

А полностью попробуй напиши ... :))))))))))


 
Zemal ©   (2002-06-11 09:45) [4]

Можно и вот так к примеру:

UPDATE T1
SET T1.name = T2.name
FROM T1 INNER JOIN T2 ON T1.id = T2.id
WHERE T1.name != T2.name AND T2.name IS NOT NULL

Если надо что разъяснить,
то обращайся на мыло:
zemal@rtsnet.ru


 
Johnmen ©   (2002-06-11 09:56) [5]

>Zemal © (11.06.02 09:45)

Откуда взят такой синтаксис апдейта ?


 
Fishka   (2002-06-11 10:05) [6]

update T1 set T1.NAME=(select T2.NAME from T2
where T1.ID=T2.ID)
where exists (select T2.ID from T2 where T1.ID=T2.ID)

Замечание. Последнее условие where exists (select T2.ID from T2 where T1.ID=T2.ID) не нужно, если для каждого T1.ID есть T2.ID. Данное условие может быть другим, например с использованием IN (select .......)


 
Johnmen ©   (2002-06-11 10:16) [7]

>Fishka (11.06.02 10:05)

Рекомендую сначала попробовать работоспособность приведенного примера....
И указать для какой СУБД он приведен...


 
Fishka   (2002-06-11 11:26) [8]

>Johnmen © (11.06.02 10:16)
Запросы такого вида были мною написаны для DBF и MSSQL.
Работоспособность проверена. Вот текст работающего запроса (для моих DBF):
update "D:\bio.dbf" a
set name = (select PNRUS from "d:\biores.dbf" b
where a.cod_f=b.obk)
where a.cod_f in (select obk from "d:\biores.dbf" c)


 
Johnmen ©   (2002-06-11 11:44) [9]

>Fishka (11.06.02 11:26) : Удивительно...:)


 
VAleksey ©   (2002-06-11 14:46) [10]


> Johnmen © (11.06.02 11:44)

Удивительно, что это для тебя удивительно !


 
Johnmen ©   (2002-06-11 14:56) [11]

>VAleksey © (11.06.02 14:46)

Веришь-нет, никогда не приходилось делать такие апдейты, поскольку, если вникнуть в то, что он делает, становится очевидным, что при конструировании БД были допущены существенные огрехи, в т.ч. при нормализации....

А сам запрос действительно работает...:)


 
VAleksey ©   (2002-06-11 15:02) [12]


> Johnmen © (11.06.02 14:56)

ты совершенно прав. Поэтому я и не ответил на этот вопрос сразу, а только после того как ты высказался. -).
ЗЫ
Хотелось подразнить мастера. :)



Страницы: 1 вся ветка

Текущий архив: 2002.07.04;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.012 c
3-9696
oss
2002-06-10 12:44
2002.07.04
Ado blob field


1-9794
Sirus
2002-06-23 19:45
2002.07.04
Как распечатать HTML документ из TWebBrowser a????


4-10063
BAHO
2002-05-04 04:49
2002.07.04
Драйвер Клавы & Мыши


3-9716
mrgrin
2002-06-10 18:29
2002.07.04
Как задать жесткий путь к базе для всех компонентов?


3-9702
serg_ss
2002-06-10 16:13
2002.07.04
Почему в IB SQL-запросе 10 - null = null