Est-il possible de joindre les résultats de 2 SELECTinstructions SQL en une seule instruction? J'ai une base de données de tâches où chaque enregistrement est une tâche distincte, avec des délais (et un PALT, qui est juste un INTjour du début à la date limite. AgeEst également un INTnombre de jours.)
Je veux avoir un tableau qui a chaque personne dans le tableau, le nombre de tâches qu'ils ont et le nombre de LATEtâches qu'ils ont (le cas échéant).
Je peux facilement obtenir ces données dans des tableaux séparés, comme ceci:
SELECT ks, COUNT(*) AS '# Tasks' FROM Table GROUP BY ks
renvoyer des données comme:
ks # Tasks
person1 7
person2 3
et puis j'ai:
SELECT ks, COUNT(*) AS '# Late' FROM Table WHERE Age > Palt GROUP BY ks
qui renvoie:
ks # Late
person1 1
person2 1
Et je veux joindre les résultats de ces deux selectdéclarations (par le KS)
J'essaie d'éviter d'utiliser une table temporaire, mais si c'est le seul moyen pratique de le faire, j'aimerais en savoir plus sur l'utilisation des tables temporaires de cette manière.
J'ai également essayé de créer une sorte de count()lignes qui satisfassent un conditionnel, mais je ne savais pas non plus comment le faire. Si c'est possible, cela fonctionnerait aussi.
Addendum: Désolé, je veux que mes résultats ont des colonnes pour KS, TasksetLate
KS # Tasks # Late
person1 7 1
person2 3 1
person3 2 0 (or null)
De plus, je veux qu'une personne se présente même si elle n'a pas de tâches en retard.
SUM(CASE WHEN Age > Palt THEN 1 ELSE 0 END) Late
fonctionne bien, merci pour cette réponse!
Deux instructions select fonctionnent également, l'utilisation de a LEFT JOINpour les joindre fonctionne également, et je comprends maintenant comment joindre plusieurs selects de cette manière