在sql
的文本列中无法识别正方形([])方括号我在SQL表中有一列包含json
列表作为文本。在sql
我想找到列中有[7]
的所有行。所以,我有类似如下的
SELECT col1, col2 FROM tbl1 WHERE col2 LIKE '[7]'
然而,这回来了什么(虽然我可以看到行,当我INSPEC具有该领域的表格)。
更奇怪的是,如果我尝试编辑查询到以下
SELECT col1, col2 FROM tbl1 WHERE col2 LIKE '%[7]%'
它会发现,有[7]
行,但它也将得到明确(我认为)行违反该模式,即行有[1,7]
方括号是什么特殊的东西,我不知道?
尝试像
SELECT col1, col2 FROM tbl1
WHERE col2 LIKE '%\[7]%' ESCAPE '\'
您只需要转义左括号,右括号暗指''%\ [7]%'ESCAPE'\'' –
@AaronD他们说每天都是学校一天,我不知道这:)谢谢你指出这一点 –
我从你的答案(许多)中学到了。很高兴通过这一点点。 –
是..他们是引用的形式。看到这个你的问题http://stackoverflow.com/questions/439495/how-can-i-escape-square-brackets-in-a-like-clause –
也使用'LIKE'没有通配符几乎相同使用'=' – Lamak
@AaronD感谢您的帮助 – sedavidw