sql语句中in的用法

sql语句中in的用法,我把replace(aa.ddid,',',',0')换成 245,0,0,0,0就可以,如图

IN 操作符允许我们在 WHERE 子句中规定多个值。

SQL IN 语法:

SELECT column_name(s)

FROM table_name

WHERE column_name IN (value1,value2,...)

扩展资料:

1、IN 与 = ANY 等价,均表示,变量在(子查询)列表之中,即 a IN (table B) 表示 a = ANY B.b

2、NOT IN 与 <> ALL 等价,而不等于<> ANY,前两者均表示,变量不在(子查询)列表之中,即 a NOT IN (table B) 表示 a <> ALL B.b。而如果a <> ANY B.b,则只要任意一个b<>a就true了。

3、IN 与 EXISTS 的性能区别主要来自,IN 会编列子查询的每行记录,然后再返回,而EXISTS 则只要遇到第一个满足条件的记录就马上返回。

参考资料来源:百度百科-结构化查询语言

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-12-16
你这样构造in的范围不对. 你这样是把in后面处理成一个字符串了, 而in后面跟的应该是一个范围.
你可以自己写一个返回数据集的函数来将aa.ddid值处理成in的范围, 类似于:
假设函数: ft01(nvarchar(1000)) returns table tb (val int)
那么, 这样更新里面子查询的in条件:
where id in (select val from ft01(aa.ddid))

另外, 此解决方法只是从in条件上来说.本回答被提问者和网友采纳
第2个回答  2013-08-13
IN一般是用来做子查询的,你需要模糊查询则需要用like加上%这个通配符
第3个回答  2021-04-01

第4个回答  2013-08-13
错误提示不时很清楚吗,与你的 in 子句无关
相似回答