在我的很多 MySQL 查询中,我都有一些计算
(CAST(return_item as SIGNED)*2-1)
本质上,这段代码转换了 true => 1
和 false => -1
,而且效果很好!
我不喜欢它的是它在 SQL 语句中的可读性。
是否有更简洁的方式来编写此声明,使其意图更清晰?
return_item
是BIT(1)
,代表系统中的 bool 值。
最佳答案
如果你想明确表达你的意图,没有比使用条件语句更好的方法了:
IF(return_item, 1, -1)
关于mysql - 在 MySQL 中将 bool 值转换为正号或负号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19278344/