Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So zählen Sie zwei verschiedene Daten in einer Abfrage

Mit einer CASE-Anweisung können Sie in einer einzigen Abfrage alles zählen, was Sie wollen:

SELECT
    SUM(CASE WHEN Persons.Name = 'John' THEN 1 ELSE 0 END) AS JohnCount,
    SUM(CASE WHEN Persons.Name = 'John' AND Persons.Age > 30 THEN 1 ELSE 0 END) AS OldJohnsCount,
    COUNT(*) AS AllPersonsCount
FROM Persons