![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
UPDATE с углубленным сравнением [MSSQL]
Ольга © (2005-02-18 09:30:00)Пишу хранимую процедуру.
Есть 2 таблицы Т1 и Т2 с одинаковыми структурами.
Нужно обновить данные в Т1 для всех соответствующих записей из Т2, где были сделаны изменения хотя бы в одном поле.
Пишу в лоб:
UPDATE T1 SET pole1=b.pole1,...,poleN=b.poleN
FROM T1 a, T2 b
WHERE a.id=b.id AND (a.pole1<>b.pole1 OR ... OR a.poleN<>b.poleN)
Как-то коряво, длинно (около 40 полей), с души воротит.
Может есть какие-нибудь более эффектные средства для определения идентичности двух записей? Или какая другая альтернатива для решения задачи?
Johnmen (2005-02-18 09:41:00) [21]>Может есть какие-нибудь более эффектные средства для
>определения идентичности двух записей?
Девушкам, как всегда, нужны эффектные средства, а мужикам эффективные :)))
Но в данном случае ничего, кроме прямого явного сравнения полей не существует. А если бы и существовало, то как ты себе это представляешь ?
ЮЮ (2005-02-18 09:39:00) [22]Не использовать значения полей T1, а только T2 - тогда и обнавлять не надо! Зачем дублировать данные???