gpt4 book ai didi

mysql - 在mysql中的一个查询中用两个不同的地方计算两个不同的总和

转载 作者:行者123 更新时间:2023-11-29 00:22:28 24 4
gpt4 key购买 nike

伙计们,我有一个查询将计算一定的总和,相同的逻辑,相同的代码,但有不同的 where 子句,我可以在一个查询中完成吗?示例:

Select SUM( mi.myitem_price * msi.my_item_quantity) as order_sum from sometable where mi.myitem_order_id = 'somevalue';

第二个查询:

Select SUM( mi.myitem_price * msi.my_item_quantity) as location_sum from sometable where mi.myitem_location_id = 'somevalue';

为了清楚起见,第一个查询将计算不同位置的所有订单,而第二个查询将仅计算每个位置。我需要同时获取具有不同值的 order_sumlocation_sum

最佳答案

你可以尝试这样做(使用条件聚合)

SELECT SUM(CASE WHEN mi.myitem_order_id = 'somevalue' 
THEN mi.myitem_price * msi.my_item_quantity END) order_sum,
SUM(CASE WHEN mi.myitem_location_id = 'somevalue'
THEN mi.myitem_price * msi.my_item_quantity END) location_sum
-- WHERE mi.myitem_order_id = 'somevalue'
-- OR mi.myitem_location_id = 'somevalue'
FROM sometable

关于mysql - 在mysql中的一个查询中用两个不同的地方计算两个不同的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20606347/

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