我正在使用 SQL Server 2012。
我想获取列数以及每组中具有特定条件的行数。
我想到的查询看起来像这样:
select count(column1), (column2 where column2 contains 'page1')
group by column1
我知道上面的查询不正确,但我想展示这个想法。
样本数据
专栏 1 专栏 2 ------ ---------- x1 'temp/page1_l' x1 'temp/page2_f' x2 'temp/page2_d' x2 'temp/page1_k' x2 'temp/page2_e'
预期产出
计数(第 1 列)第 2 列 -------------- -------------- 2 'temp/page1_l' 3 'temp/page1_k'
我怎样才能达到那个输出?
对于
(column2 where column2 contains 'page1')
表达式,尝试类似的东西:...但我不确定如果您有多行且每列 1 都有“page1”,您会期待什么。
鉴于此示例数据:
解决它的一种方法是单独计数:
或者略有不同:
另一个是按照 Rob 的建议: