是否可以SELECT
在一条语句中加入2条sql 语句的结果?我有一个任务数据库,其中每个记录都是一个单独的任务,带有截止日期(并且a PALT
,INT
从开始到截止日期只是几天。 Age
也是INT
几天)。
我想要一个表,其中包含表中的每个人,他们拥有的LATE
任务数以及他们拥有的任务数(如果有)。
我可以轻松地在单独的表中获取此数据,如下所示:
SELECT ks, COUNT(*) AS '# Tasks' FROM Table GROUP BY ks
返回数据,如:
ks # Tasks
person1 7
person2 3
然后我有:
SELECT ks, COUNT(*) AS '# Late' FROM Table WHERE Age > Palt GROUP BY ks
返回:
ks # Late
person1 1
person2 1
我想加入这两个select
语句的结果(通过KS
)
我试图避免使用临时表,但是如果这是唯一可行的方法,那么我想了解更多有关以这种方式使用临时表的信息。
我也尝试做一些count()
满足条件的行,但是我也不知道怎么做。如果可能的话,那也可以。
附录:对不起,我想我的结果有列KS
,Tasks
和Late
KS # Tasks # Late
person1 7 1
person2 3 1
person3 2 0 (or null)
另外,即使他们没有迟到的任务,我也希望一个人出现。
SUM(CASE WHEN Age > Palt THEN 1 ELSE 0 END) Late
效果很好,谢谢您的回答!
两个select语句也可以工作,使用a LEFT JOIN
将它们联接也可以,并且我现在了解如何以select
这种方式联接多个s