【发布时间】:2013-10-20 04:41:32
【问题描述】:
当我写的时候:
if not exists (select * from sys_maxkey)
更好,或者
if not exists (select id from sys_maxkey)
最好是表sys_maxkey变量。
还是没有区别?我上网查了exists和in,但是没注意这个特殊点。
谢谢!
【问题讨论】:
当我写的时候:
if not exists (select * from sys_maxkey)
更好,或者
if not exists (select id from sys_maxkey)
最好是表sys_maxkey变量。
还是没有区别?我上网查了exists和in,但是没注意这个特殊点。
谢谢!
【问题讨论】:
我建议像这样只使用1。这将是最好的。因为exists 只检查你的表中是否有任何条目。
if not exists (select 1 from sys_maxkey)
虽然如果您想比较问题中提到的上述两者,那么
if not exists (select id from sys_maxkey)
如果id 是主键会更好。您不必为了检查表中是否存在值而使用* 检查所有列。
【讨论】: