找出相同结构两个table之间的不同的record
编号:QA000515
建立日期: 1999年2月12日 最后修改日期:1999年2月12日
所属类别:
BrightSu:
Visual Basic 5.0
WIN 95
各位SQL高手,在此请教一个问题:
我建了两个TABLE,TABLE的内容如下:
表1(TAB01)
T1 T2 T3 T4
A001 B001 C001 123.4
A002 B002 C002 981.5
A003 B003 C003 564.8
表2(TAB02)
T5 T6 T7 T8
A001 B001 C001 123.4
A002 B002 C002 187.5
A003 B003 C003 584.8
A004 B001 C001 894.6
A003 B002 C001 265.7
我想在表2中查询出T8的值,条件是:表2的记录不在表1中, 即:T5,T6,T7与T1,T2,T3不完全相等, 我目前已经有了一种方法,但该方法的执行速度太慢,请教各位高手一种更快的方法,谢谢。
我用的方法是:
SELECT T5,T6,T7,T8 FROM TAB02 WHERE
T5||T6||T7 NOT IN
(SELECT T1||T2||T3 FROM TAB01)
执行的结果是:
T5 T6 T7 T8
A004 B001 C001 894.6
A003 B002 C001 265.7
如果那位高手有答案,请不吝赐教。
回答:
关于找出相同结构两个table之间的不同的record,可采用以下方法:
SELECT T5,T6,T7 FROM table2
MINUS
SELECT T1,T2,T3 FROM table1;
此问题由Jonson Huo回答。
| |
|
|
| |
|
|