Bagaimana saya dapat memilih count(*)
dari dua tabel berbeda (panggil mereka tab1
dan tab2
) sebagai hasilnya:
Count_1 Count_2
123 456
Saya sudah mencoba ini:
select count(*) Count_1 from schema.tab1 union all select count(*) Count_2 from schema.tab2
Tapi yang saya miliki adalah:
Count_1
123
456
FROM dual
.Sebagai informasi tambahan, untuk mencapai hal yang sama di SQL Server, Anda hanya perlu menghapus bagian "FROM dual" dari kueri.
sumber
Hanya karena ini sedikit berbeda:
Ini memberikan jawaban ditransformasikan (satu baris per tabel, bukan satu kolom), kalau tidak saya tidak berpikir itu jauh berbeda. Saya pikir kinerja-bijaksana mereka harus setara.
sumber
Pengalaman saya dengan SQL Server, tetapi bisa Anda lakukan:
Di SQL Server saya mendapatkan hasil yang Anda cari.
sumber
Metode lain yang sedikit berbeda:
sumber
Karena saya tidak dapat melihat jawaban lain apa pun yang mengangkat ini.
Jika Anda tidak suka sub-kueri dan memiliki kunci utama di setiap tabel, Anda bisa melakukan ini:
Tapi kinerja bijaksana saya percaya bahwa solusi Quassnoi lebih baik, dan yang saya gunakan.
sumber
SELECT (SELECT COUNT(*) FROM table1) + (SELECT COUNT(*) FROM table2) FROM dual;
sumber
Ini dari saya untuk dibagikan
Opsi 1 - menghitung dari domain yang sama dari tabel yang berbeda
Opsi 2 - menghitung dari domain yang berbeda untuk tabel yang sama
Opsi 3 - menghitung dari domain yang berbeda untuk tabel yang sama dengan "gabungan semua" untuk memiliki baris hitungan
Nikmati SQL, saya selalu melakukan :)
sumber
sumber
sumber
Tusukan cepat muncul dengan:
Catatan: Saya menguji ini dalam SQL Server, jadi
From Dual
tidak perlu (maka perbedaannya).sumber
Untuk sedikit kelengkapan - kueri ini akan membuat kueri untuk memberi Anda jumlah semua tabel untuk pemilik tertentu.
Outputnya seperti
Yang kemudian bisa Anda jalankan untuk mendapatkan jumlah Anda. Ini hanya skrip yang berguna untuk berkeliling.
sumber
Jika tabel (atau setidaknya kolom kunci) dari jenis yang sama, buat serikat terlebih dahulu, lalu hitung.
Atau ambil satement Anda dan letakkan jumlah lain () di sekitarnya.
sumber
sumber
atau
sumber
GABUNG dengan tabel berbeda
sumber
pilih (pilih count ( ) dari tab1 di mana
field
like 'value') + (pilih count ( ) dari tab2 di manafield
like 'value') countsumber
sumber