2つのSQL SELECT
ステートメントの結果を1つのステートメントに結合することはできますか?タスクのデータベースがあり、各レコードは個別のタスクであり、期限が設定されています(および、開始から期限までの日数 PALT
であるa も日数です)。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
そして、私はこれらの2つの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
この回答に感謝します!
2つのselectステートメントも機能し、a LEFT JOIN
を使用してそれらを結合することもできます。select
この方法で複数のを結合する方法を理解しました