gpt4 book ai didi

php - 在查询中计数两次,一次使用限制

转载 作者:行者123 更新时间:2023-11-29 02:07:50 25 4
gpt4 key购买 nike

给定下表:

Table1
[class] [child]
math boy1
math boy2
math boy3
art boy1

Table2
[child] [glasses]
boy1 yes
boy2 yes
boy3 no

如果我想查询每个类(class)的 child 人数,我会这样做:

SELECT class, COUNT(child) FROM Table1 GROUP BY class

如果我想查询每个类(class)戴眼镜的 child 的数量,我会这样做:

SELECT Table1.class, COUNT(table1.child) FROM Table1
LEFT JOIN Table2 ON Table1.child=Table2.child
WHERE Table2.glasses='yes' GROUP BY Table1.class

但我真正想做的是:

SELECT class, COUNT(child), COUNT(child wearing glasses)

坦率地说,我不知道如何在一个查询中做到这一点。

帮助?

最佳答案

你可以尝试这样的事情(不检查语法):

SELECT 
class,
COUNT(distinct Table1.child),
SUM(IF(Table2.glasses='yes', 1, 0))
FROM Table1
LEFT JOIN Table2 ON Table1.child=Table2.child

这有点 hacky,您可能会发现在两个查询中更容易做到这一点,但这种技术在紧要关头对我有用

关于php - 在查询中计数两次,一次使用限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2854518/

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