社区
MS-SQL Server
帖子详情
在存储过程中,怎么用not in
youxihaha
2003-12-15 08:03:09
比如我想传入这样一个字符串(123,212,32)
然后select * from users where userid not in (123,212,32)
...全文
107
5
打赏
收藏
在存储过程中,怎么用not in
比如我想传入这样一个字符串(123,212,32) 然后select * from users where userid not in (123,212,32)
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
vileboy
2003-12-15
打赏
举报
回复
declare @krs table (NUM INT)
DECLARE @X VARCHAR(8000)
SET @X='123,212,32,'
WHILE @X<>''
BEGIN
INSERT INTO @KRS (NUM) VALUES (LEFT(@X,(CHARINDEX(',',@X)-1) ) )
SET @X=RIGHT(@X,LEN(@X)-CHARINDEX(',',@X))
END
select * from users where userid not in(select num from @drs)
youngby
2003-12-15
打赏
举报
回复
crate pro myPro
@1 varchar(20),
@2 varchar(20),
@3 varchar(20)
as
exec('select * from users where userid not in ('+@1+','+@2+','+@3+')')
go
txlicenhe
2003-12-15
打赏
举报
回复
测试:
create table t1(a int)
insert t1 values(1)
insert t1 values(2)
insert t1 values(3)
insert t1 values(4)
go
create proc test @s varchar(20)
as
exec('select * from t1 where a not in '+@s)
go
-- 调用
exec test '(1,2)'
a
-----------
3
4
(所影响的行数为 2 行)
j9988
2003-12-15
打赏
举报
回复
有点错
select * from users where charindex(','+rtrim(userid)+',' ,','+@字符串+',')>0
j9988
2003-12-15
打赏
举报
回复
select * from users where charindex(','+rtrim(userid)+',' ,@字符串)>0
OR:
exec('select * from users where userid not in ('+@字符串+')')
SQL NOT IN 优化语句,
存储过程
执行查询快到心跳加速!
NOT IN SQL 语句如下: 当
存储过程
执行not in 大量数据的时候,响应需要1分钟以上! SELECT *FROM mfworkdetail (NOLOCK) WHERE workorderno='63514-16120082' AND partno NOT IN ( SELECT partno FROM mfworkdetail (NOLOCK) WHERE workorderno...
mysql select if in_能在MySQL过程
中
使用IF NOT IN吗?
首先让我们看看IF NOT IN在MySQL
中
的语法-if(yourVariableNameNOTIN(yourValue1,yourValue2,........N))thenstatement1elsestatement2endif让我们实现以上语法以使用IF NOT IN-DELIMITER//CREATEPROCEDUREIF_NOT_INDemo(INvaluein...
oracle in 空值替换,Oracle SQL语句
中
NOT IN子查询
中
的NULL值陷阱
今天在使用Oracle数据库写
存储过程
时,发现了一个NOT IN子查询的null值陷阱。看了点资料,大概记录如下。1、问题记录本来是要查出A表
中
col列值在B表col列
中
没有出现过的记录。实际数据库是有符合条件的记录的,但是,运行如下SQL:Select *From Awhere A.col not in (Select B.col from B)始终查不出结果。经查,原来是查询子句:Select...
mysql
存储过程
中
参数的in,out,inout区别
MySQL
存储过程
的参数用在
存储过程
的定义,共有三种参数类型,IN,OUT,INOUT,形式如:CREATE PROCEDURE([[IN |OUT |INOUT ] 参数名 数据类形...])1、IN 输入参数:表示该参数的值必须在调用
存储过程
时指定,在
存储过程
中
修改该参数的值不能被返回,为默认值2、OUT 输出参数:该值可在
存储过程
内部被改变,并可返回3、INOUT 输入输
在sql语句
中
替换Not In 的方法
在sql语句
中
替换Not In 的方法 前言: 今天在写一条sql查询语句,其需要从一个表A
中
返回所有A不再表B
中
的结果集,当然,这种实现最方便的方法就是用NOT IN。 如:select a.* from a where a.id not in (select id from b where……) 我们大家都知道很多sql方面的文章都建议大家尽量不要使用NOT IN的方法,因为这种方法的效率不高...
MS-SQL Server
34,838
社区成员
254,632
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章