我怎样才能得到每个国家最好的供应商?我有这个代码,它显示了两个表之间的连接,现在我必须得到每个国家最大的gmv。
这是我的工作代码:
SELECT DISTINCT a.country_name, b.vendor_name,
SUM(a.gmv_local) as total_gmw
from `my-project-67287.order1.order2`a
join `my-project-67287.vendor1.vendor2` b on a.vendor_id = b.id
group by a.country_name, b.vendor_name;

前三名应该显示如下:

发布于 2022-06-21 04:13:37
假设可以将该SELECT保存到名为vendors的表中,则需要将其用作FROM子句中的子查询。你可以用这个:
SELECT vendors.country_name, vendors.vendor_name, MAX(vendors.total_gmw)
FROM
(
SELECT DISTINCT a.country_name, b.vendor_name,
SUM(a.gmv_local) as total_gmw
from `my-project-67287.order1.order2`a
join `my-project-67287.vendor1.vendor2` b on a.vendor_id = b.id
group by a.country_name, b.vendor_name
) AS vendors
GROUP BY vendors.country_name;我必须指出,我没有测试您的查询,因为我没有您的表,所以我假设它是正确的。我只使用图片中所需的字段和值创建了vendors表。这应该打印:

发布于 2022-06-21 04:30:02
SELECT odr.c_name,vdr.v_name,odr.gmv
FROM(
SELECT *
FROM(
SELECT c_name,v_id,gmv
FROM `order`
ORDER BY gmv DESC
)
GROUP BY c_name
)AS odr
LEFT JOIN vender AS vdr ON vdr.id = odr.v_id
GROUP BY odr.c_namec_name是country_name的缩写
https://stackoverflow.com/questions/72694936
复制相似问题