gpt4 book ai didi

sql - 如何在 SQL 查询中使用 LIKE 转义

转载 作者:行者123 更新时间:2023-12-01 06:24:00 26 4
gpt4 key购买 nike

我的查询是:

declare @param1 INT,
@param2 nvarchar(max)

set @param1 = 1
set @param2 = '[Test_data_forQry],[Next_Test_Data]'

SELECT *
FROM Table1
WHERE
ColumnA = @param1
AND (',' + @param2 +',' LIKE '%,' + CONVERT(VARCHAR, ColumnB) + ',%');

方括号和下划线阻止了数据获取。我的问题是我应该放在哪里 转义 '\' 在查询的最后一行。
我也试过 REPLACE 选项,但没有用
set @param1 = 1
set @param2 = '[Test_data_forQry],[Next_Test_Data]'

set @param2 = replace (replace(@param2 , '[', '[[]'), '_','[_]')

SELECT *
FROM Table1
WHERE
ColumnA = @param1
AND (',' + @param2 +',' LIKE '%,' + CONVERT(VARCHAR, ColumnB) + ',%');

最佳答案

我可以通过使左方括号成为文字来做到这一点。尝试这个:

declare @table table (column1 varchar(100))
insert @table(column1) values('[square_brackets_1]')
insert @table(column1) values('[square_brackets_2]')
insert @table(column1) values('[square_brackets_3]')
insert @table(column1) values('[square_brackets_4]')
insert @table(column1) values('[square_brackets_5]')

select * from @table

select * from @table where column1 like '[[]square_brackets_5]'

引用: https://msdn.microsoft.com/en-us/library/ms179859.aspx

关于sql - 如何在 SQL 查询中使用 LIKE 转义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30533939/

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