34,590
社区成员
发帖
与我相关
我的任务
分享
SELECT
*
FROM
(
SELECT
*,
ROW_NUMBER() OVER (PARTITION BY
city
ORDER BY
Amount DESC
) rn
FROM
(
SELECT
[ORDER].Name,
store.City,
SUM(Amount) AS Amount
FROM
[ORDER]
JOIN
store
ON [ORDER].store = store.store
GROUP BY
[ORDER].Name,
store.City
) t
) t1
WHERE
rn = 2;
SELECT DISTINCT
s.[City],
t.[Name],
t.[sumAmout]
FROM (
SELECT [Name],
SUM([Amout]) AS sumAmout,
ROW_NUMBER() OVER(PARTITION BY [Name] ORDER BY SUM([Amout]) DESC) AS rid
FROM [Order]
GROUP BY
[Name]
) AS t
INNER JOIN [Order] AS o
ON t.[Name] = o.[Name]
INNER JOIN [Store] AS s
ON o.[Store] = s.[Store]
WHERE t.rid = 2
SELECT
Name,
SUM(Amount) / COUNT(DISTINCT OrderId) AS 平均订单金额
FROM
[order]
WHERE
Name IN (
SELECT
[ORDER].Name
FROM
[ORDER]
JOIN
product
ON [ORDER].product = product.product
WHERE
Category = 'CategoryA'
)
GROUP BY
Name;
SELECT
store.City,
COUNT(DISTINCT store.store) AS 总店铺数,
COUNT(DISTINCT [ORDER].Name) AS 总购买人数,
SUM(Amount) AS 总购买金额
FROM
store
LEFT JOIN
[ORDER]
ON [ORDER].store = store.store
JOIN
product
ON [ORDER].product = product.product
GROUP BY
store.City
SELECT
[ORDER].Name,
SUM(Amount) AS Amount,
SUM(Quantity) AS Quantity,
COUNT(DISTINCT OrderDate)
FROM
[ORDER]
JOIN
product
ON [ORDER].product = product.product
JOIN
store
ON [ORDER].store = store.store
GROUP BY
[ORDER].Name
HAVING
SUM(Amount) >= 800;