mysql - 在 MySQL 中将 bool 值转换为正号或负号

标签 mysql

在我的很多 MySQL 查询中,我都有一些计算

(CAST(return_item as SIGNED)*2-1)

本质上,这段代码转换了 true => 1false => -1,而且效果很好! 我不喜欢它的是它在 SQL 语句中的可读性。

是否有更简洁的方式来编写此声明,使其意图更清晰?

return_itemBIT(1),代表系统中的 bool 值。

最佳答案

如果你想明确表达你的意图,没有比使用条件语句更好的方法了:

IF(return_item, 1, -1)

关于mysql - 在 MySQL 中将 bool 值转换为正号或负号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19278344/

相关文章:

Mysql数据库同步

php - 如何根据数据库中的另一个变量存储不同自增的ID

mysql - phpmyadmin #1045 无法登录 MySQL 服务器。安装mysql命令行客户端后

php - 尝试将购物车中的数据插入新表时出错

mysql - 复合键的 1 列出现重复输入错误

PHP - 值未显示在编辑表单中

mysql - MySQL如何为一张表选择多个值 "cell"

android - 简单的 MySQL 数据库问题 - 每个应用程序用户的数据库?

php - 您的SQL语法有误;检查与您的MariaDB服务器版本相对应的手册以获取正确的语法。

mysql - FOREIGN KEY CONSTRAINT 的定义不起作用