我正在尝试将所有行和所有列中的所有 true bool 值添加在一起。
我的 table 看起来像:
我想做这样的事情:
SELECT *
FROM name
WHERE kw = 8 --> MO + DI + MI + DO = 10
这应该可以在一次选择中实现,但我只是不知道如何。
最佳答案
将每条记录的值相加,然后使用聚合对行进行求和。由于它们是 bool 值,加零不会影响求和结果。
SELECT sum(MO+DI+MI+DO) myResult
FROM name
where kw = 8
如果您需要按每个 kw 分组的数据集...您也可以这样做...这比单独按每个 kw 查询性能更好。
SELECT kw, sum(MO+DI+MI+DO) myResult
FROM name
GROUP BY kw
关于mysql - 具有 4 个 bool 列和 1 个 int 列的 sql 表。如何将一个 int 中的所有 bool 值相加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35700944/