gpt4 book ai didi

mysql - mysql 如何执行或解释子查询?

转载 作者:行者123 更新时间:2023-11-29 22:03:26 25 4
gpt4 key购买 nike

我需要了解mysql如何解释或执行这样的子查询:

SELECT SUM(tp),SUM(ep),SUM(mp) FROM
(
SELECT Avg(case date_format(PS_DATE,'%Y') when '2005' then nvl(tp,0) else 0 end) tp,
Avg(case date_format(PS_DATE,'%Y') when '2005' then nvl(ep,0) else 0 end) ep,
Avg(case date_format(PS_DATE,'%Y') when '2005' then nvl(mp,0) else 0 end) mp
FROM M_DAILY
WHERE PS_DATE >= date ('2005-01-01') and PS_DATE <= date ('2005-12-31');
) As T

有人可以解释一下这样的查询是如何解释的(用文字)吗!

最佳答案

对于 2005 年,它查找 tp、ep 和 mp 列的平均值之和。执行此操作时,空值被视为 0。由于日期是 2005 年过滤的,因此上面的代码可以简化为

SELECT SUM(tp),SUM(ep),SUM(mp) FROM
(
SELECT Avg(nvl(tp,0)) tp,
Avg(nvl(ep,0)) ep,
Avg(nvl(mp,0)) mp
FROM M_DAILY
WHERE PS_DATE >= date ('2005-01-01') and PS_DATE <= date ('2005-12-31');
) As T

关于mysql - mysql 如何执行或解释子查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32392411/

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