sql中到底 in 和 exist哪一个快?

mm7711 2007-01-16 04:17:33
第一个sql:
Delete From Log_Cust_Info WHERE EXISTS ( Select cust_id From CustomerWhere Customer.cust_id = Log_Cust_Info.cust_id AND Customer.CANCEL_DT < DATEADD(dd,-180,getdate())
第二个sql:
 Delete From Log_Cust_Info WHERE cust_id in(Select cust_id from Customer Where CANCEL_DT < DATEADD(dd,-180,getdate())

上面这个sql是否相等的?执行速度哪个一个更快?
...全文
257 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
jacobsan 2007-01-16
  • 打赏
  • 举报
回复
要看你写的语句,以及子查询返回的数据集大小,不能一概而论的
rookie_one 2007-01-16
  • 打赏
  • 举报
回复
以前有人证实过了exists快
smart_zcg 2007-01-16
  • 打赏
  • 举报
回复
觉得差别不大,因为都是找到了一个满足条件的值就返回真
marco08 2007-01-16
  • 打赏
  • 举报
回复
exists
中国风 2007-01-16
  • 打赏
  • 举报
回复
用语句一快判断真假
Customer<Log_Cust_Info数据量比较
速度一样
反之
exists就快

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧