当前位置:首页 » 编程语言 » sql替代in

sql替代in

发布时间: 2023-08-07 10:36:05

sql中用什么替代in

【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。

Ⅱ sql 代替 in

--可试试:
select * from tableA where age = 1
union all
select * from tableA where age = 2
union all
select * from tableA where age = 6
union all
select * from tableA where age = 9
;

思路:
1.避免用in,分开来查,再用union all .
2.实际效率取决于表的实际情况:数据量,索引等。

Ⅲ sql查询有什么能替代in

in是影响SQL性能的,因为它会被解释成or,这将会舍弃使用索引。
如果有大量数据,又不想用IN,就只能在逻辑上弄清楚IN里面数据的关系,使用">","<"这种了。

Ⅳ sql模糊查询in的替代方法有什么,如下例

把num前后都拼上逗号,然后再用like
in '%,1,%' or in '%,3,%'
如果是mysql可以用find_in_set

Ⅳ sql in用exist替代问题

请参考:

--in改写exists
SELECTu.id,u.real_nameASrealName
FROMsys_useru
LEFTJOINsys_orgo
ONo.id=u.org_id
WHEREu.org_id=#{orgId}
ANDexists(select1
fromsys_user_roleur
whereur.user_id=u.id
anr.role_idIN(6,8))

Ⅵ 有没有什么好的方法代替 sql 里面的 in 功能

首先你得知道in的功能是什么。
sql里面的、on
、in
、between都有什么区别
on是关于的意思、用于两个关联的条件上面、比如
a
join
in
b
on
a.name=b.name
in是落于的意思、在你有明确的指向值的时候用。不如
in('上海,北京')
between是位于的意思、用于区域间的指向用。比如
where
age
between
18
and
24
自己好好理解

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:705
制作脚本网站 发布:2025-10-20 08:17:34 浏览:969
python中的init方法 发布:2025-10-20 08:17:33 浏览:677
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:830
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:737
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1076
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:308
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:188
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:875
python股票数据获取 发布:2025-10-20 07:39:44 浏览:829