SELECT
하나의 명령문 으로 2 개의 SQL 문 결과를 결합 할 수 있습니까? 나는 마감 시간에 각 레코드는 별도의 작업은 작업의 데이터베이스가 (그리고 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 를 결합하는 방법을 이해합니다.