J'ai deux tables dans ma base de données, Department
& DepartmentErrors
. Le tableau DepartmentErrors
contient une colonne appelée 'Error
SELECT Instruction avec sous-requête corrélée/imbriquée
Je voudrais exécuter une instruction select sur la table Department
, correspondant à toutes les occurrences connexes de ce ministère au sein DepartmentError
, où la valeur Error
correspond à un numéro. Je voudrais ensuite ajouter une colonne sur cet ensemble de résultats, pour chaque département, contenant combien de lignes correspondant à cet ID de département & La valeur d'erreur est apparue dans la table d'erreurs de département. Ceci est mon code à ce jour:
SELECT DISTINCT
Department.DeptID,
Name,
Size,
Location,
(
SELECT COUNT(*)
FROM DepartmentErrors
INNER JOIN Departments ON DepartmentErrors.DeptID = Departments.DeptID
WHERE Error = 2
) AS ErrorCount
FROM Departments
INNER JOIN DepartmentErrors ON Departments.DeptID = DepartmentErrors.DeptID
WHERE DepartmentErrors.Error = 2
Tag votre question. 'mysql' et' sql-server' sont deux produits différents. –
@John Bergqvist: Vous n'étiez pas censé supprimer les balises * both * 'mysql' et' sql-server', mais seulement enlever la balise incorrecte et garder la bonne. Avec la seule balise 'sql', nous savons qu'il s'agit du langage SQL, mais nous ne connaissons pas le SGBD - ce qui pourrait être utile car les dialectes SQL diffèrent. –