sql语句中where后怎么加数组

sql语句中where后怎么加数组,第1张

--1. 构造使用IN子句的动态Transact-SQL方法进行编号查询

--a. 要查询的字段类型是数字型

--查询的值列表

DECLARE @idlist varchar(100)

SET @idlist='1,2,3'

--拼接并执行动态Transact-SQL语句

EXEC('SELECT * FROM tbname WHERE fdname IN('+@idlist+')')

GO

--b. 要查询的字段类型是字符型

--查询的值列表已经加上了字符串边界符

DECLARE @idlist varchar(100)

SET @idlist='''a'',''b''''a'',''c'''

--拼接并执行动态Transact-SQL语句

EXEC('SELECT * FROM tbname WHERE fdname IN('+@idlist+')')

GO

SQL语句可以声明使用数组,声明方法为:

1、先定义一个数组,数组内容是一些数字,可以对应为数据表里的id列。

2、关键是把数组的内容转换为sql语句里的in语句里的字符串。

3、然后拼接sql查询语句里,将转换后的字符串拼接到in语句后就行了。

4、不直接用代码去执行数据库了,先使用dump语句把sql输出来。

5、运行页面,可以看到最终的sql语句是如下图这样的。

6、然后可以将sql语句在数据库客户端工具里执行一下。

7、执行后,就可以声明使用数组了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11462468.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存