select * from users where charindex(','+rtrim(userid)+',' ,@字符串)>0OR:exec('select * from users where userid not in ('+@字符串+')')
解决方案 »
- 解析SQL查询时生成的临时文件
- 分页
- 在安装的时候出现两次\"command line option syntax error.type command /? for help\" 错误
- 导出问题:使用导入导出向导将数据库a中几个表完整的拷贝到数据库b,但发现起扩展属性无法导过去(自增字段、默认值)请问有什么办法可以将
- 请问怎么写这搜索的,就是可以搜索各字段
- 求教如何把0004,0013,0177,2999,这样的四位字符变为INT?
- 关于sql2005中最大值的取得问题
- 求一条sql语句。---很急。。。
- 关于存储过程中使用日期型变量的问题
- 更改服务器排序规则
- ms sql6.5的登录用户的问题
- 初学者请教排序问题?谢谢!(在线)
select * from users where charindex(','+rtrim(userid)+',' ,','+@字符串+',')>0
create table t1(a int)
insert t1 values(1)
insert t1 values(2)
insert t1 values(3)
insert t1 values(4)
gocreate proc test @s varchar(20)
as
exec('select * from t1 where a not in '+@s)
go
-- 调用
exec test '(1,2)'
a
-----------
3
4(所影响的行数为 2 行)
@1 varchar(20),
@2 varchar(20),
@3 varchar(20)
as
exec('select * from users where userid not in ('+@1+','+@2+','+@3+')')
go
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))
ENDselect * from users where userid not in(select num from @drs)