0

我正在使用sql server management studio 2012

我想要做的是检查字符串值是否有点如果是那么我想检查这个值是否大于1。这是我的代码:

(TRY_CONVERT(bit, '2') IS NULL OR TRY_CONVERT(bit, '2') > 1) 

出于这个示例的目的,我在那里硬编码了一个带有值的字符串。

任何人都可以告诉我为什么这不起作用我的意思是第二个条件。

4

1 回答 1

2

bitSQL Server 中的字段只能具有以下三个值之一:10否则NULL检查大于 1 的值是无效的。

所以为了解决你的问题,我会考虑这种方法

SELECT Convert(bit, CASE WHEN your_field IN ('1', '0') THEN your_field END) As valid_bit
于 2013-08-09T12:40:26.830 回答