Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 使用SQL统计行中唯一值的出现次数_Mysql_Phpmyadmin_Xampp - Fatal编程技术网

Mysql 使用SQL统计行中唯一值的出现次数

Mysql 使用SQL统计行中唯一值的出现次数,mysql,phpmyadmin,xampp,Mysql,Phpmyadmin,Xampp,我有一张这样的桌子: ID | B1 | B2 | B3 | B4 | B5 | ------------------------------------ 1 | N | N | N | N | N | 2 | N | Y | N | Y | Y | 3 | N | N | N | N | Y | 我想要一个应该返回的查询 ID | Count | ------------ 1 | 5 | 2 | 2 | 3 | 4

我有一张这样的桌子:

ID | B1 | B2 | B3 | B4 | B5 |  
------------------------------------  
1  | N  | N  | N  | N  | N  |
2  | N  | Y  | N  | Y  | Y  |
3  | N  | N  | N  | N  | Y  |  
我想要一个应该返回的查询

ID | Count |  
------------
 1 |   5   |
 2 |   2   |
 3 |   4   |

请注意,
MySQL
中的布尔表达式解析为
0/1

a=b仅当a等于b时返回1,否则返回0

SELECT 
  ID,
  (
    (B1 = 'N')+
    (B2 = 'N')+
    (B3 = 'N')+
    (B4 = 'N')+
    (B5 = 'N')
  ) AS Count
FROM your_table


建议:

最好规范化你的数据


请参见

请分享您尝试过的方法请参见正常操作我尝试了用于计算行数的方法。i、 e从表中选择计数(B1+B2+B3+B4+B5)作为计数@1000111如果我有更多的B怎么办。什么是我的价值高达B40?规范化您的数据。在这种情况下,这是最好的建议。如何正常化。请详细说明。以B达到30为例。谢谢。只有两种类型(“Y”和“N”)吗?是的,只有两种