在SQL查询中将int或null转换为boolean值的最佳方法是什么,例如:
任何非空值为TRUE的结果
任何空值是假的结果
Tomalak.. 53
据我所知(如果我错了,请纠正我),SQL中没有文字布尔值的概念.您可以将表达式计算为布尔值,但不能输出它们.
这就是说,您可以使用CASE WHEN生成可在比较中使用的值:
SELECT CASE WHEN ValueColumn IS NULL THEN 'FALSE' ELSE 'TRUE' END BooleanOutput FROM table
cvk.. 19
无需使用案例...时:
select (column_name is not null) as result from table_name;
对于所有非NULL字段,返回1,对于所有NULL字段,返回0,这与SQL中的布尔值一样接近.
据我所知(如果我错了,请纠正我),SQL中没有文字布尔值的概念.您可以将表达式计算为布尔值,但不能输出它们.
这就是说,您可以使用CASE WHEN生成可在比较中使用的值:
SELECT CASE WHEN ValueColumn IS NULL THEN 'FALSE' ELSE 'TRUE' END BooleanOutput FROM table
无需使用案例...时:
select (column_name is not null) as result from table_name;
对于所有非NULL字段,返回1,对于所有NULL字段,返回0,这与SQL中的布尔值一样接近.