Einfachste Weg, um ein Gesamt-Anzahl und eine Anzahl von eine Teilmenge?

War ich versucht, dies zu tun:

SELECT COUNT(*),
        (
            SELECT COUNT(*) FROM attend
            WHERE (DATEPART(WEEKDAY,start_date) = 2 OR DATEPART(WEEKDAY,start_date) = 6)
            AND empl_no = 12345
        )
        FROM attend as a
 WHERE empl_no = 12345

Aber das scheint ein wenig hässlich. Gibt es einen besseren Weg, dies zu tun?

  • Ist es die doppelte where-Klausel werden Teile oder die wiederholte Verwendung der gleichen Tabelle, dass Sie hässlich finde?
  • Mehr die sub-Abfrage.
  • FYI: Ein allgemeiner Tabellenausdruck gibt keine performance-Vorteil - nate c s Antwort ist das effizienteste Mittel.
InformationsquelleAutor Abe Miessler | 2010-12-11
Schreibe einen Kommentar