gpt4 book ai didi

sql - 在 SQL WHERE CLAUSE 的变量中使用一串带引号的值

转载 作者:行者123 更新时间:2023-12-04 13:49:41 25 4
gpt4 key购买 nike

答案让我望而却步……也许是因为这是不可能的……

有效的例子...

SELECT * FROM TABLEA WHERE FIELD1 IN ('aaa','bbb','ccc')

不起作用的例子......

尝试利用变量,以便我可以在一串语句中定义一次值
DECLARE @ListValues VARCHAR(50)

SET @ListValues = '''aaa'',''bbb'',''ccc'''

SELECT * FROM TABLEA WHERE FIELD1 IN (@ListValues)

这显然只是等式的一小部分,还有其他原因......

我无法利用值的表并将其更改为真正的子查询

我能找到的最接近的问题是这个……但显然没有涵盖我的要求……
Storing single quotes in varchar variable SQL Server 2008

提前致谢。

最佳答案

您可以使用动态 SQL 执行此操作:

DECLARE @ListValues VARCHAR(MAX)
,@SQL VARCHAR(MAX)
SELECT @ListValues = '''aaa'',''bbb'',''ccc'''
,@SQL = 'SELECT * FROM TABLEA WHERE FIELD1 IN ('+@ListValues+')'
EXEC (@SQL)

关于sql - 在 SQL WHERE CLAUSE 的变量中使用一串带引号的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23770181/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com