我有一个名为 boolean
的表其中包含“真”和/或“假”值作为一列中的字符串。
我在创建时遇到问题 case
显示是否只有“真”或“假”或“两者”值的语句
示例 1:
'true'
'true'
结果:'真'
示例 2:
'false'
'false'
'false'
结果:'假'
示例 3:
'true'
'false'
'true'
结果:'两者'
编辑:
case
语句应如下所示:case
when "column content are only true values" then 'true'
when "column content are only false values" then 'false'
else 'both'
end
最佳答案
您可以聚合 max
和 min
列,然后评估结果 - 如果它们相同,则列中只有一个值。如果没有,则必须两者都有。请注意,由于这些是字符串表示,因此值按字典顺序排序:
SELECT CASE WHEN MAX(col) = MIN(col) THEN MAX(col) ELSE 'both' END
FROM my_table
关于SQL Server : case statement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30817168/