我有一个简单的json mysql查询,如下所示:
SELECT json_object(
'isCreated', true,
'active', IF(s.status = 1, true, false),
...)
FROM people;
我不明白为什么isCreated
会按预期返回true
,为什么active
会返回1
,而预期会返回true
我也尝试在mysql shell SELECT IF(1= 1, true, false)
中运行,然后又回到1
,我希望它是真的...
答案 0 :(得分:0)
在您的情况下, true false 是布尔值。 MySQL将布尔值存储为整数。如果 true false 为字符串格式(“ true”,“ false”),它将返回true或false。分配if条件始终视为true。请检查以下链接一次。