我正在尝试做类似的事情:
SELECT c.id, c.name, COUNT(orders.id)
FROM customers c
JOIN orders o ON o.customerId = c.id
但是,SQL 不允许使用 COUNT 函数。执行时给出的错误是 c.Id 在选择列表中无效,因为它不在 group by 子句中或未聚合。
我想我知道问题所在, COUNT 只计算表中的所有行orders
。我如何计算每个客户的数量?
编辑
完整的查询,但它是荷兰语......这是我试过的:
select k.ID,
Naam,
Voornaam,
Adres,
Postcode,
Gemeente,
Land,
Emailadres,
Telefoonnummer,
count(*) over (partition by k.id) as 'Aantal bestellingen',
Kredietbedrag,
Gebruikersnaam,
k.LeverAdres,
k.LeverPostnummer,
k.LeverGemeente,
k.LeverLand
from klanten k
join bestellingen on bestellingen.klantId = k.id
没有错误,但也没有结果..