Ist es möglich, die Ergebnisse von 2 SQL-SELECT-Anweisungen in einer Anweisung zu verbinden? Ich habe eine Datenbank von Aufgaben, wo jeder Datensatz eine separate Aufgabe ist, mit Fristen (und ein PALT, das ist nur ein INT von Tagen vom Start bis Deadline.JOIN zwei SELECT-Anweisung Ergebnisse
Ich möchte um eine Tabelle zu haben, die jede Person in der Tabelle hat, die Anzahl der Aufgaben, die sie haben, und die Anzahl der LATE Aufgaben, die sie haben (falls vorhanden).
Ich kann diese Daten in separaten Tabellen leicht erhalten, so:
SELECT ks, COUNT(*) AS '# Tasks' FROM Table GROUP BY ks
Rückkehr Daten wie:
ks # Tasks
person1 7
person2 3
und dann habe ich
SELECT ks, COUNT(*) AS '# Late' FROM Table WHERE Age > Palt GROUP BY ks
, die zurückgibt:
ks # Late
person1 1
person2 1
Und ich will die Ergebnisse dieser beiden select-Anweisungen verbinden (von der KS)
Ich versuche, Um zu vermeiden, eine temporäre Tabelle zu verwenden, aber wenn das der einzige praktische Weg ist, dies zu tun, würde ich gerne mehr über die Verwendung von temporären Tabellen auf diese Weise wissen.
Ich habe auch versucht, irgendeine Art von count() # von Zeilen, die eine bedingte erfüllen, aber ich konnte nicht herausfinden, wie dies auch tun. Wenn es möglich ist, würde das auch funktionieren.
Nachtrag: Sorry, ich möchte, dass meine Ergebnisse Spalten haben für KS, Aufgaben und Spät
KS # Tasks # Late
person1 7 1
person2 3 1
person3 2 0 (or null)
Außerdem möchte ich eine Person sogar zeigen, wenn sie keine späte Aufgaben haben.
SUM (FALL WENN Alter> Palt DANN 1 ELS 0 ENDE) Spät funktioniert gut, danke für diese Antwort!
Zwei SELECT-Anweisungen funktionieren auch, die Verwendung eines LINKEN JOIN, um sie zu verbinden funktioniert auch, und ich verstehe jetzt, wie mehrere Auswahl auf diese Weise verbunden werden. Vielen Dank!
Sie haben keine angegeben Beispiel für das erwartete Ergebnis. Einige Antworten sind daher verkettende Ergebnisse. Einige schließen sich an. Welchen willst du? – Phil
Sorry, ich möchte, dass meine Ergebnisse Spalten haben für KS, Aufgaben und Spät KS # Aufgaben # Späte person1 7 1 person2 3 1 Person3 2 0 (oder null) Außerdem möchte ich eine Person zu zeigen, auch wenn sie keine späten Aufgaben haben. Das erreichen wir zur Zeit mit der SELECT-Anweisung mit einem LINKEN JOIN (im Gegensatz zu dem vorgeschlagenen INNER JOIN, der funktioniert, aber keine Personen ohne späte Aufgaben zeigt, weil sie nicht in der zweiten SELECT Auch erreichen dies mit der späte Spalte ist SUMME (FALL WENN Alter> Palt DANN 1 ELSE 0 END) Spät – sylverfyre