gpt4 book ai didi

php - 在 MySQL 中统计轮询数据

转载 作者:行者123 更新时间:2023-11-29 20:56:08 25 4
gpt4 key购买 nike

我的 mySQL 表中有数据,其中包含以下列:

question 1 | question2 | question3 | question4

以及每个数据都是 1 到 3 之间的数字。我想计算每个问题的 1、2 和 3 的数量,并有以下内容,但不起作用。

SELECT
question1 as q1
,COUNT(question1) as q1C
,question2 as q2
,COUNT(question2) as q2C
,question3 as q3
,COUNT(question3) as q3C
,question4 as q4
,COUNT(question4) as q4C
FROM pollOne
WHERE question1 != 0
AND question2 != 0
AND question3 != 0
AND question4 != 0
GROUP BY q1, q2, q3, q4

如果我将其拆分为一个问题,那么它的工作原理如下:

SELECT
question1 as q1
,COUNT(question1) as q1C
FROM pollOne
WHERE question1 != 0
GROUP BY q1

但如果可能的话,我宁愿能够一次性完成。大家有什么想法吗?

部分回答了我自己的问题,但不是解决方案,我在堆栈中遇到了此链接:

https://stackoverflow.com/a/2421441/5880604

对 mySQL 中的 Group By 用法进行了很好的解释,并清楚地说明了为什么我一直在尝试做的事情不起作用。

我仍然想知道这是否可能,是否有人有任何见解?

最佳答案

好吧,解决我的问题的一个粗略方法是单独迭代每个问题,将每个问题插入一个数组。

$data = array();

for ($i=1; $i < 5; $i++) {
$sql = "SELECT
question" . $i . " as q" . $i . "
,COUNT(question" . $i . ") as q" . $i . "C
FROM pollOne
WHERE question" . $i . " != 0
GROUP BY q" . $i;
$result = mysqli_query($connection, $sql);
while ($row = mysqli_fetch_assoc($result)){
array_push($data, $row);
}
}

我确实工作,因为这只是一个只持续几天的小项目,所以我对此感到满意。

关于php - 在 MySQL 中统计轮询数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37616248/

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