【问题标题】:How do I select distinct and count those selected?如何选择不同的并计算选择的那些?
【发布时间】:2016-10-31 12:01:03
【问题描述】:

我如何选择不同的并计算选择的那些?这是我的 Select Distinct 代码:

SELECT distinct  [ClientID]
  ,[AssessmentDate]

FROM [dbo].[UserAssessrcads]

我希望它以:

结尾
RCADS      62

(或类似的东西)

【问题讨论】:

  • 提示:GROUP BY
  • 您的输出似乎没有显示日期。你能澄清一下吗?

标签: sql count ssms distinct


【解决方案1】:

你可以使用动态表

  select count(*) from ( 
      SELECT distinct  [ClientID]
              ,[AssessmentDate]
        FROM [dbo].[UserAssessrcads] ) t

【讨论】:

  • 这不只是一个子选择吗?我的意思是有一个特定的临时表方法,会有点不同?
  • @DHN 您的评论在不正确的临时表中是正确的,因为未声明并创建为临时表.. 但不正确地只是子选择,因为是动态生成的表.. .. 无论如何我稍微更新了我的答案..
  • 我不明白这如何回答原始问题?这与仅从 UserAssessrcads 中执行 select count(*) 没有什么不同?
  • @ChristopherTrevor 原始问题选择不同的clientID ...但OP需要知道此行的数量...我的答案是获取此数字的简单方法..只需计算数字OP 选择的行数...希望这很有用
  • 嗯,好的,我现在和你在一起。误读了问题,认为它需要对每个 clientID 进行计数
【解决方案2】:

更好的方法是:

SELECT [ClientID],[AssessmentDate], count(1)
FROM [dbo].[UserAssessrcads]
group by [ClientID],[AssessmentDate]

【讨论】:

  • 这没有提供我要求的结果。
  • 嗨@DavidJeffery,您想要每个“客户 ID-评估日期”组合的计数还是此类组合的数量?如果是前者,我的查询会告诉你。如果是后者,我不明白您的示例输出中的“RCADS”是什么意思。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-05-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-27
  • 1970-01-01
相关资源
最近更新 更多