我正在尝试编写一个SQL语句,它将返回多列连接的计数,但保留原始表中的所有行。
例如,我有一个列出Customers和Items组合的表。特定客户+项目组合可能有多行。我想有一个列显示每行中整个表中Customer + Item组合的计数。
因此,如果Customer1 + Item1组合在我的表中出现10次,我希望这个新列显示10,但我仍然希望结果表包含所有10个原始行。
答案 0 :(得分:0)
使用子查询怎么样......
在T-SQL中的(因为你没有指定方言......)可能如下所示:
select
customer,
item,
(
select
count(*)
from table i
where
i.customer = o.customer and i.item = o.item
)
from table o