mysql:遍历每一行,计算满足条件的列数

cuxqih21  于 2021-06-25  发布在  Mysql
关注(0)|答案(1)|浏览(371)

我有一张类似的table:

|       | column1 | column2 | column3 | column4 |
|-------|---------|---------|---------|---------|
| user1 | 100     | 49      | 3       | 1,980   |
| user2 | 7       | 5       | 51      | 500     |
| user3 | 1       | 65      | 44      | 37      |

我要遍历所有的行,对于每一行,我要选择 count() 与满足条件的列数有关的( value < 100 ,例如)
所以每行计算的结果 value < 100 可能是:

user1: 2
user2: 3
user3: 4

有人知道怎么做吗?对于这么具体的问题,我似乎找不到任何答案。
谢谢!

5jvtdoz2

5jvtdoz21#

我完全忘了做一个简单的硬编码查询。
这个解决方案适合我:

SELECT user,              (column1 < 100) +
                          (column2 < 100) +
                          (column3 < 100) +
                          (column4 < 100)
AS total FROM table;

多亏了评论者——我忽略了这个简单的解决方案。

相关问题