gpt4 book ai didi

mysql - 查找 mysql 表中特定行的多个列的众数

转载 作者:行者123 更新时间:2023-11-30 01:13:28 24 4
gpt4 key购买 nike

我知道如何在 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"

(我的最终目标是找到表中每月列众数为零的所有 dataid)

是否有一些简单的方法可以做到这一点(无需昂贵的子查询),或者我最好在 php 中计算模式并将其作为单独的列添加到表中?该表会更新,因此表中的模式值每次都必须更新,而且我只需要它用于一个快速项目,因此试图避免这条路线。

最佳答案

这不是你最终想要的吗?

SELECT dataid
FROM your_table
WHERE
IF(Jan, 1, 0) +
IF(Feb, 1, 0) +
IF(Mar, 1, 0) +
IF(Apr, 1, 0) < 3

关于mysql - 查找 mysql 表中特定行的多个列的众数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19276762/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com