Anscheinend suchen Sie nach der Summe der Datensatzzahlen für eine Reihe unterschiedlicher Abfragen Ihrer Tabellen.
Die erste Alternative ... die Ergebnisse jeder Abfrage zählen und dann hinzufügen ... ist schneller. Wieso den? Es hat weniger Arbeit. Ihre zweite Alternative muss eine Reihe von comid
ringen Werte und zähle sie dann. Das braucht Zeit.
Verwenden Sie COUNT(*)
falls Sie können. Es ist billiger. Verwenden Sie UNION ALL
statt UNION
wenn du kannst; UNION
entfernt Duplikate und UNION ALL
nicht. Das Entfernen von Duplikaten braucht Zeit.
Die Leistung beider Alternativen hängt von einer guten Auswahl an Indizes für jede Unterabfrage ab.