我知道如何在 mysql 的单个列中找到模式(最常见的值),但我试图弄清楚是否可以在特定行的多个列中找到模式。到目前为止,我对如何做到这一点空手而归。
我的表如下所示:
dataid Jan Feb Mar Apr
a 0 1 1 1
b 0 0 0 1
c 1 0 0 0
d 7 0 3 3
每行的模式将是:
a 1
b 0
c 0
d 3
平均值不适用于我正在使用的数据中需要的结果,因此我需要为所有列中的每一行找到最常见的值。我知道这不存在,但我正在寻找的是类似的东西
"select mode(Jan+Feb+Mar+Apr) from tablename where dataid=c"
(我的最终目标是在每月列的模式为零的表中找到所有数据ID)
是否有一些简单的方法可以做到这一点(没有昂贵的子查询)或者我最好在 php 中计算模式并将其作为单独的列添加到表中?该表已更新,因此表中的模式值每次都必须更新,我只需要它用于一个快速项目,因此试图避免该路线。