【问题标题】:Count the column records in sql统计sql中的列记录
【发布时间】:2020-05-02 21:36:55
【问题描述】:

例如我有一个表“CATcuestonario”

  • 只有一条记录。

  • 我只想统计值“Si”已注册的列

  • 在本例中为 3(列 preg1、列 preg3、列 preg4)

如何构建此查询?

【问题讨论】:

  • 请通过编辑您的问题展示您尝试解决问题的方法。

标签: sql sql-server database string tsql


【解决方案1】:

一个简单的解决方案是使用cross apply 取消透视,然后计数:

select count(*) no_matches
from mytable t
cross apply (values(preg1), (preg2), (preg3), (preg4)) x(preg)
where x.preg = 'Si'

请注意,如果您的表格不止一行,这也适用。

Demo on DB Fiddle

| no_matches | | ---------: | | 3 |

【讨论】:

    猜你喜欢
    • 2011-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-20
    • 2019-03-22
    • 2023-03-03
    • 2020-04-06
    相关资源
    最近更新 更多