具有空字符串 (%%) 的 SQL Server LIKE 操作程序是否与 VARCHAR 列中的所有非 NULL 值匹配?



我有以下SQL,它是作为存储过程的一部分执行的(提供给LIKE运算符的值是一个设置为空字符串的变量(:

SELECT productCode FROM tblProductCodes WHERE productCode LIKE %''%;
--productCode is a VARCHAR(255) column

假设上面的查询将始终返回表中所有非NULL的productCode条目,是否保存?

我正在运行SQL Server 2008

这是一个语法错误:

WHERE productCode LIKE %''%

大概你的意思是:

WHERE productCode LIKE '%%'

这与productCode的所有非NULL值相匹配。%是匹配0个或多个字符的通配符。

如果你想保证一个代码有一定数量的字符,那么你可以使用_。因此,这确保了productCode至少有两个字符:

WHERE productCode LIKE '__%'

相关内容

最新更新