Jak mogę wybrać count(*)
z dwóch różnych tabel (wywołać je tab1
i tab2
) mając w rezultacie:
Count_1 Count_2
123 456
Próbowałem tego:
select count(*) Count_1 from schema.tab1 union all select count(*) Count_2 from schema.tab2
Ale wszystko co mam to:
Count_1
123
456
FROM dual
.Jako dodatkowe informacje, aby osiągnąć to samo w SQL Server, wystarczy usunąć część zapytania „z podwójnego”.
źródło
Tylko dlatego, że jest nieco inny:
Daje transponowane odpowiedzi (jeden wiersz na tabelę zamiast jednej kolumny), w przeciwnym razie nie sądzę, że jest inaczej. Myślę, że pod względem wydajności powinny one być równoważne.
źródło
Moje doświadczenie dotyczy SQL Server, ale czy możesz:
W SQL Server otrzymuję wynik, którego szukasz.
źródło
Inne nieco inne metody:
źródło
Ponieważ nie widzę żadnej innej odpowiedzi na to pytanie.
Jeśli nie lubisz sub-zapytań i masz klucze podstawowe w każdej tabeli, możesz to zrobić:
Ale jeśli chodzi o wydajność, uważam, że rozwiązanie Quassnoi jest lepsze i tego chciałbym użyć.
źródło
SELECT (SELECT COUNT(*) FROM table1) + (SELECT COUNT(*) FROM table2) FROM dual;
źródło
Oto ode mnie do udostępnienia
Opcja 1 - liczenie z tej samej domeny z innej tabeli
Opcja 2 - liczenie z innej domeny dla tej samej tabeli
Opcja 3 - liczenie z innej domeny dla tej samej tabeli z „zjednoczeniem wszystkich”, aby mieć wiersze liczenia
Korzystaj z SQL, zawsze to robię :)
źródło
źródło
źródło
Wymyślił szybkie dźgnięcie:
Uwaga: Przetestowałem to w SQL Server, więc
From Dual
nie jest to konieczne (stąd rozbieżność).źródło
Dla odrobiny kompletności - to zapytanie utworzy zapytanie, które da ci liczbę wszystkich tabel dla danego właściciela.
Wynik jest podobny
Które możesz następnie uruchomić, aby uzyskać swoje rachunki. Czasami jest to po prostu przydatny skrypt.
źródło
Jeśli tabele (lub przynajmniej kolumna klucza) są tego samego typu, po prostu utwórz związek, a następnie policz.
Lub weź swoje sytowanie i umieść wokół niego kolejną sumę ().
źródło
źródło
lub
źródło
DOŁĄCZ z różnymi tabelami
źródło
wybierz (wybierz liczbę ( ) z zakładki 1 gdzie
field
jak „wartość”) + (wybierz liczbę ( ) z zakładki 2 gdziefield
jak „wartość”) liczźródło
źródło