在 Oracle 中,可以使用||获取多列中不同值的计数。操作员(无论如何,根据这个论坛帖子):
SELECT COUNT(DISTINCT ColumnA || ColumnB) FROM MyTable
有没有办法在 SQL Server 2008 中做到这一点?我正在尝试执行单个查询以返回一些组统计信息,但我似乎做不到。
例如,这是我要查询的值表:
AssetId MyId TheirId InStock
328 10 10 1
328 20 20 0
328 30 30 0
328 40 10 0
328 10 10 0
328 10 10 0
328 10 10 0
328 10 10 0
对于 AssetId #328,我想计算MyId和TheyId列中唯一 ID 的总数(4 = 10、20、30、40),以及InStock列中非零行的总数(1 ):
AssetId TotalIds AvailableIds
328 4 1
有没有办法以某种方式发挥这种魔力?