我熟悉这种查询:
select * from tableA where foo like '%bar%'
但今天我在一些遗留代码中遇到了三个相邻的百分号,就像这样:
select * from tableA where foo like '%%%'
这个查询似乎在mssql和oracle上都能够正常工作,当foo是字符串类型(varchar等)时也可以正常工作,但是当foo是数字类型时会失败。
有什么想法吗?
编辑:对不起,在原问题中打错了一个字,查询使用的是LIKE运算符。
=
而不是LIKE
运算符,它是在查找包含'%bar%'
的值。 - Wim