Вниз
Скачать: CL | DM;

Сравнение и выборка   Найти похожие ветки 

 
ArtemB ©   (2003-02-11 08:44) [0]

Есть две табдицы Table1 Table2
Надо посмотреть какие записи в Table1 являются новыми (их нет в Table2) и сделать с этими новыми записями операции определенные (посмотреть и по согласию перенести их в Table2).
Уникальных полей нет...

Я делаю выделением цветом в DBGrid по событию DrawColumnCell (там я говорю если Loockup то выдели цветом эту строку), а потом переношу строки (по циклу) которые выведены определенным цветом.
НО это очень долгий процесс, т.к. в Loockup много полей по условию поиска (18).

КАК можно быстрее сделать, какие есть выходы??? ???


 
Соловьев ©   (2003-02-11 09:30) [1]

select table1.*, table2.*
from table1 left join table2
on
table1.field1=table2.field1 and
table1.field2=table2.field2 and
...
Те записи которые будут отсутствовать в table2, будут NULL.


 
stone ©   (2003-02-11 09:33) [2]


> потом переношу строки (по циклу) которые выведены определенным
> цветом


Примерно так

insert into Table2(field_1,...Field_n) select * from Table1 t1 where not exists(select * from table2 t2 where t2.Field_1=t1.Field_1 and ... t2.Field_n=t1.Field_n)



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
4-87738
OxOTHuK
2003-01-12 11:59
2003.02.27
Список процессов


3-87272
anatolyk
2003-02-08 20:53
2003.02.27
Работа с БД.


14-87666
gn
2003-02-10 08:09
2003.02.27
сша обнаглело


3-87285
Seacat
2003-02-07 14:39
2003.02.27
обработка курсора oracle в delphi


4-87750
avch
2003-01-13 06:40
2003.02.27
Убийство




   Наверх