sql 语句 where 。。in 。。性能不好,可以用什么代替?面试官问的
2个回答
展开全部
【where 。。in 。。 】 使用【where .... exists....】
【where 。。not in 。。 】 使用【where .... not exists....】
SELECT [字段1],[字段2],[字段3],.... FROM 表名1 AS a WHERE exists
(SELECT 1 FROM 表名2 AS b WHERE a.[字段X] = b.[字段X] )
注:1、a.[字段X] 和 b.[字段X] 是相互关联的字段。
2、SELECT 1 FROM 中数字1 是没有具体含义的你可以使用任何字段,
这里是为了减少占用系统资源建议你使用1。
【where 。。not in 。。 】 使用【where .... not exists....】
SELECT [字段1],[字段2],[字段3],.... FROM 表名1 AS a WHERE exists
(SELECT 1 FROM 表名2 AS b WHERE a.[字段X] = b.[字段X] )
注:1、a.[字段X] 和 b.[字段X] 是相互关联的字段。
2、SELECT 1 FROM 中数字1 是没有具体含义的你可以使用任何字段,
这里是为了减少占用系统资源建议你使用1。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询