|
|
|
Сравнение таблиц
|
|||
|---|---|---|---|
|
#18+
Пивет всем! Задача: Есть две выборки из двух таблиц примерно одинаковых по структуре (выборки по структуре одинаковы), нужно выяснить одинаковы ли выборки. Выборки считаются одинаковыми если у них значения всех столбцов в строках совпадают. Все строки в целом в таблице уникальны. Вопрос: Как это сделать не прибегая к курсорам? Единственное что приходит в голову, что-то типа select * from table1 t1 where t1.col1 exists (select t2.col1 from table2 t2 where t1.col2=t2.col2 and t1.col3=t2.col3 ) Но что-то как-то не очень-то и работает ... Есть идеи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2002, 07:43:12 |
|
||
|
Сравнение таблиц
|
|||
|---|---|---|---|
|
#18+
Должно выглядеь примерно так: select case when Count(*) = (select Count(*) from Table2) then 1 else 0 end as Flag from Table1 t1 where Exists(select * from Table2 t2 where t1.Col1 = t2.Col1 and t1.Col2 = t2.Col2 and t1.Col3 = t2.Col3) Данный запрос вернет поле Flag с 1 - если все совпадает и 0, если не совпадает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2002, 12:56:40 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32031601&tid=1822523]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
194ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
| others: | 207ms |
| total: | 497ms |

| 0 / 0 |
