gpt4 book ai didi

mysql - 查询过滤

转载 作者:搜寻专家 更新时间:2023-10-30 23:19:42 24 4
gpt4 key购买 nike

我不认为这是可能的,但我想确定一下。

假设我想在某些条件下获得用户的平均年龄。

SELECT avg(age) as avg_a FROM users where something something;

现在假设客户想要获得平均年龄,男性平均年龄和女性平均年龄。

类似

SELECT avg(age) as avg_a, avg(age where female) avg_f, avg(age where male) avg_m FROM users where something something;

这样的事情是否可能甚至明智?

我该怎么做?或者我应该每次只运行 3 个查询?

最佳答案

是的,您可以在聚合函数中使用 case 语句。见:

SELECT
avg(age) avg_age,
avg(case when gender = 'M' then age end) male_avg_age,
avg(case when gender = 'F' then age end) female_avg_age
FROM users;

关于mysql - 查询过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8012619/

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