You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写SQL查询获取利润最低的日期及对应当日总利润额

你现有查询的逻辑问题在于,MIN(PRICE*QUANTITY)统计的是每个日期下单笔订单的最小销售额,并非当日所有订单的累计总利润,因此无法返回你需要的当日总额。

要实现需求且不额外新增输出列,只需将聚合函数从MIN改为SUM即可,调整后的语句如下:

SELECT SUM(PRICE*QUANTITY) AS UMSATZ, ORDER_DATE
FROM FACT_ORDER
GROUP BY ORDER_DATE
ORDER BY UMSATZ
LIMIT 1;

修改后语句会先按日期分组累加当日所有订单的利润得到当日总额,再按总额升序排序取第一条,输出的列数、列名和你原有查询完全一致。

如果存在多个日期的总利润同为最低值,需要全部返回的话,可以使用兼容写法:

WITH daily_total AS (
    SELECT SUM(PRICE*QUANTITY) AS UMSATZ, ORDER_DATE
    FROM FACT_ORDER
    GROUP BY ORDER_DATE
)
SELECT UMSATZ, ORDER_DATE
FROM daily_total
WHERE UMSATZ = (SELECT MIN(UMSATZ) FROM daily_total)

内容的提问来源于stack exchange,提问作者telarewa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 11:39:04