Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Menggabungkan Berbilang Jadual dengan Struktur Berbeza ke dalam Jadual Output Bersatu Tunggal Menggunakan SQL?

Bagaimanakah Saya Boleh Menggabungkan Berbilang Jadual dengan Struktur Berbeza ke dalam Jadual Output Bersatu Tunggal Menggunakan SQL?

Barbara Streisand
Lepaskan: 2024-12-22 02:00:12
asal
368 orang telah melayarinya

How Can I Combine Multiple Tables with Different Structures into a Single Unified Output Table Using SQL?

Menggabungkan Jadual untuk Output Bersatu

Jadual boleh digabungkan untuk mencapai pelbagai hasil manipulasi data. Satu tugas biasa adalah untuk menyatukan data daripada berbilang jadual ke dalam satu jadual untuk analisis selanjutnya. Pertimbangkan senario berikut:

Anda mempunyai dua jadual, KnownHours dan UnknownHours, yang mengandungi data jam yang dikaitkan dengan nombor caj. Objektif anda adalah untuk mengumpulkan waktu perniagaan ini, tanpa mengira bulan, ke dalam satu jadual dengan format berikut:

ChargeNum    CategoryID     Hours
111111       1              90
111111       2              50
111111       Unknown        110.5
222222       1              40
222222       Unknown        25.5
Salin selepas log masuk

Dalam senario ini, anda perlu mengagregatkan waktu untuk setiap gabungan unik ChargeNum dan CategoryID (atau "Tidak diketahui" untuk UnknownHours). Untuk mencapai matlamat ini, anda boleh memanfaatkan operator UNION:

SELECT ChargeNum, CategoryID, SUM(Hours)
FROM KnownHours
GROUP BY ChargeNum, CategoryID
UNION ALL
SELECT ChargeNum, 'Unknown' AS CategoryID, SUM(Hours)
FROM UnknownHours
GROUP BY ChargeNum
Salin selepas log masuk

Pernyataan SQL ini menggabungkan hasil dua pertanyaan. Kumpulan pertanyaan pertama dan menjumlahkan jam daripada jadual KnownHours oleh ChargeNum dan CategoryID. Pertanyaan kedua mengumpulkan dan menjumlahkan jam daripada jadual UnknownHours oleh ChargeNum dan menetapkan CategoryID 'Unknown'.

Dengan menggabungkan hasil menggunakan UNION ALL, jadual akhir termasuk baris daripada kedua-dua pertanyaan. Fungsi agregat SUM() memastikan bahawa jam terkumpul untuk memadankan ChargeNums dan CategoryIDs.

Menggunakan teknik ini, anda boleh menggabungkan jadual dengan cekap untuk mencipta paparan gabungan data anda.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggabungkan Berbilang Jadual dengan Struktur Berbeza ke dalam Jadual Output Bersatu Tunggal Menggunakan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan