0
我试图找到2个类别存在的事务计数。Sql Server - 在Aggregate IN子句中加入
我有3类:椅子,桌子,茶杯
这成为使用CROSS JOIN 9个组合(忽略受骗者并序):
Item_1 Item_2
Table Table
Table Chair
Table Cup
Chair Chair
Chair Table
Chair Cup
Cup Cup
Cup Chair
Cup Table
下有交易编号和类别的表中行级别:
Trans_id Type
123 Table
123 Cup
234 Chair
345 Cup
345 Table
我试图让这样的表显示2类别和不同交易的计数与两个类别目前:
Item_1 Item_2 Count
Table Table 578
Table Chair 826
Table Cup 370
Chair Chair 235
Chair Table 736
Chair Cup 662
Cup Cup 306
Cup Chair 262
Cup Table 839
我想我可以做这样的事情:
select item1, item2, count(distinct(trans_id))
from t1
join t2
on t1.item1 IN (SELECT type FROM t2 group by trans_id)
and t1.item2 IN (SELECT type FROM t2 group by trans_id)
但没有任何运气 - 有什么建议?