【发布时间】:2014-01-09 16:42:48
【问题描述】:
如何用不存在的方式重写下面的查询,性能比不存在的更好
SELECT m.member
FROM member m
WHERE 1 = 1
AND NOT EXISTS (
SELECT NULL
FROM history c
, tender t
WHERE 1 = 1
AND c.card_type = t.tender_type
AND c.member = m.member
AND 1 = 1 )
AND 1 = 1;
感谢您的所有帮助。
【问题讨论】:
-
我正在尝试提高使用查询的进程的性能。会员表有1000万+条记录,查询带出历史表中不存在的会员列表,招标/来源为LEV
-
从成员 m 中选择 m.member,其中 1 = 1 且不存在(从历史 c 中选择 NULL,tender t WHERE 1 = 1 AND c.card_type = t.tender_type AND c.member = m。成员 AND t.client_type = 'LEV' AND 1 = 1 ) AND 1 = 1;
标签: not-exists