Mysql查询检查number是否为x并计为1

标签 mysql

Mysql查询问题

例如,如果是 1,2 或 5,如何算为 1

字段1 = 1 字段2= 1 字段3= 5 字段4= 2 字段5=0; 字段6=6;

我需要的是检查这些字段中是否有任何一个是 1、2 或 5,并将它们算作 1 并忽略其余字段。

选择字段1+字段2+字段3+字段4+字段5+字段6;来自表 WHERE id=1; //应返回 4 (1+1+1+1+0+0)

这可以完成还是我必须使用 php 来完成?

最佳答案

SELECT field1 IN (1,2,5) + field2 IN (1,2,5) + ...

但是,这在某种程度上表明设计很糟糕;也许如果您可以提供数据背后语义的更多细节,我们可以建议更好的替代方案?

关于Mysql查询检查number是否为x并计为1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11290032/

相关文章:

mysql - 带有 MySQL 名称的 Thymeleaf 循环

php - 在特定条件下在 MySQL WHERE 子句中使用正则表达式

mysql - MySQL中堆表和临时表的区别?

php - 每当使用 £ 时,MySQL 或 PHP 都会附加一个 Â

mysql - GTID 复制错误

php - 如何在用户首次登录时显示教程/信息?

php - mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows 等...期望参数 1 是资源

mysql - 如何获取特定日期范围的最新数据?

MySQL如何对表的最低值(value)/价格进行排序,并且只显示最低的名称?

c# - 使用 Linq C# 的联接中的正则表达式?