Wie kann ich count(*)
aus zwei verschiedenen Tabellen auswählen (sie aufrufen tab1
und tab2
) als Ergebnis:
Count_1 Count_2
123 456
Ich habe das versucht:
select count(*) Count_1 from schema.tab1 union all select count(*) Count_2 from schema.tab2
Aber alles was ich habe ist:
Count_1
123
456
FROM dual
.Als zusätzliche Information müssen Sie nur den Teil "FROM dual" der Abfrage entfernen, um dasselbe in SQL Server zu erreichen.
quelle
Nur weil es etwas anders ist:
Es gibt die transponierten Antworten (eine Zeile pro Tabelle anstelle einer Spalte), ansonsten denke ich nicht, dass es viel anders ist. Ich denke, in Bezug auf die Leistung sollten sie gleichwertig sein.
quelle
Meine Erfahrung ist mit SQL Server, aber können Sie Folgendes tun:
In SQL Server erhalte ich das gewünschte Ergebnis.
quelle
Andere etwas andere Methoden:
quelle
Da ich keine andere Antwort sehen kann, bringen Sie dies zur Sprache.
Wenn Sie keine Unterabfragen mögen und Primärschlüssel in jeder Tabelle haben, können Sie dies tun:
Aber was die Leistung betrifft, glaube ich, dass die Lösung von Quassnoi besser ist und die, die ich verwenden würde.
quelle
SELECT (SELECT COUNT(*) FROM table1) + (SELECT COUNT(*) FROM table2) FROM dual;
quelle
Hier ist von mir zu teilen
Option 1 - Zählen von derselben Domain aus verschiedenen Tabellen
Option 2 - Zählen von verschiedenen Domänen für dieselbe Tabelle
Option 3 - Zählen von verschiedenen Domänen für dieselbe Tabelle mit "Vereinigung alle", um Zählzeilen zu erhalten
Genieße das SQL, das mache ich immer :)
quelle
quelle
quelle
Ein schneller Stich kam mit:
Hinweis: Ich habe dies in SQL Server getestet,
From Dual
ist also nicht erforderlich (daher die Diskrepanz).quelle
Der Vollständigkeit halber erstellt diese Abfrage eine Abfrage, mit der Sie alle Tabellen für einen bestimmten Eigentümer zählen können.
Die Ausgabe ist so etwas wie
Was Sie dann ausführen können, um Ihre Zählungen zu erhalten. Es ist nur ein praktisches Skript, das man manchmal haben kann.
quelle
Wenn die Tabellen (oder zumindest eine Schlüsselspalte) vom gleichen Typ sind, machen Sie zuerst die Vereinigung und zählen Sie dann.
Oder nehmen Sie Ihre Sättigung und setzen Sie eine andere Summe () darum.
quelle
quelle
oder
quelle
Verbinden Sie sich mit verschiedenen Tabellen
quelle
Wählen
field
Sie (wählen Sie count ( ) aus tab1, wo wie 'value') + (wählen Sie count ( ) aus tab2, wofield
wie 'value') countquelle
quelle