我需要编写一个函数来检查varchar变量值是否全为零。
由于变量是varchar而不是int,我有点迷失。你会怎么做?
非常感谢
答案 0 :(得分:5)
您可以使用带有@variable NOT LIKE '%[^0]%'
测试的双阴影:
0
哪个变量不是由某些字符组成的,那么不是 a LIKE
的字符,后跟一些数字字符。唯一与0
表达式不匹配的字符串是仅包含NOT
s的字符串,因此我们使用0
来反转结果。
(这也接受一个空字符串 - 你是否认为只有LEN(@Variable)
组成的空字符串可能是一个非常有趣的讨论 - 它肯定不包含任何其他字符。如果你选择拒绝这个,可以使用简单的{{1}}测试。