gpt4 book ai didi

sql - 计算在多个站点上订购的用户的订单数量

转载 作者:行者123 更新时间:2023-12-02 22:35:33 25 4
gpt4 key购买 nike

我有一个订单表,用于存储来 self 们公司多个站点的订单。在表中,我们有字段 userid、ordernumber 和 sitename。我希望能够获得的是从我们的 2 个或更多网站订购的用户数量。

我是这样开始的:

SELECT
o.ordernumber,
o.sitename,
o.userdbid,
o2.sitename,
o2.userdbid,
o2.ordernumber
FROM
orders o
INNER JOIN
orders o2
ON
o.userdbid = o2.userdbid
WHERE
o.sitename != o2.sitename
ORDER BY
o.userdbid;

这并不完全正确,但这是我能想到的最接近的结果。非常感谢任何帮助或指导。

最佳答案

您将需要一个 HAVING 子句来将聚合 COUNT() 与 2 进行比较,其中您已按 userbid 分组。请务必在聚合 COUNT() 中使用 DISTINCT,以便获得多个站点,而不仅仅是多个订单。

SELECT
o.userbid,
COUNT(DISTINCT o.sitename) AS num_order_sites
FROM
orders o
GROUP BY o.userbid
HAVING COUNT(DISTINCT o.sitename) >= 2

关于sql - 计算在多个站点上订购的用户的订单数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11508941/

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