【问题标题】:Combining two SQL statements with same stem but different where clause组合两个具有相同词干但不同 where 子句的 SQL 语句
【发布时间】:2021-09-14 11:44:19
【问题描述】:

请帮我把下面两条SQL语句结合起来:

SELECT Count(*) AS total_number_of_followups_scheduled
FROM PROMIS_LT; 

和:

SELECT Count(Status) AS number_followups_completed,  
FROM PROMIS_LT
WHERE (Status = "Completed");

这是我拥有的,但它不起作用:

SELECT COUNT(*) As total_number_followups_scheduled, 
COUNT(Status) 
FROM (SELECT 
CASE WHEN (Status = 'Completed' THEN 1 ELSE 0 END) As number_followups_completed FROM PROMIS_LT)
PROMIS_LT;

【问题讨论】:

  • 我会将 CASE WHEN 放在 SELECT 部分。

标签: sql select count


【解决方案1】:

您可以将case 表达式移入第二个count 调用并使用count(以及许多类似的聚合函数)跳过nulls 的事实:

SELECT COUNT(*) AS total_number_of_followups_scheduled,
       COUNT(CASE status WHEN 'Completed' THEN 1 END) AS number_followups_completed
FROM   promis_lt

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多