Dalam SQL, mengendalikan berbilang pertanyaan dan menggabungkan keputusannya ke dalam set data padu tunggal adalah keperluan biasa. Artikel ini menangani senario tertentu di mana dua pertanyaan mengembalikan set hasil yang berasingan dan matlamatnya adalah untuk menggabungkannya menjadi hasil yang bersatu dengan setiap hasil muncul sebagai lajur yang berasingan.
Yang pertama pertanyaan mendapatkan semula jumlah hari medan (fDaysSum) daripada jadual tblFieldDays berdasarkan kriteria tertentu. Pertanyaan kedua mendapatkan semula jumlah jam caj (jamSum) daripada tblChargeHours berdasarkan kriteria yang sama.
Untuk mencapai hasil yang diinginkan, anda boleh memanfaatkan teknik SQL untuk menggabungkan dua pertanyaan menjadi blok pertanyaan tunggal. Satu pendekatan yang berkesan ialah dengan menyalinkan set hasil kedua-dua pertanyaan dan kemudian memilih lajur beralias dalam pernyataan SELECT utama.
SELECT x.fDaysSum, y.hrsSum FROM (SELECT SUM(Fdays) AS fDaysSum From tblFieldDays WHERE tblFieldDays.NameCode=35 AND tblFieldDays.WeekEnding=?) AS x, (SELECT SUM(CHdays) AS hrsSum From tblChargeHours WHERE tblChargeHours.NameCode=35 AND tblChargeHours.WeekEnding=?) AS y;
Dalam contoh ini, pertanyaan pertama dialiaskan sebagai "x" dan pertanyaan kedua sebagai "y." Pernyataan SELECT utama kemudiannya mendapatkan semula lajur fDaysSum daripada x dan lajur hrsSum daripada y, dengan berkesan menggabungkan keputusan ke dalam set hasil tunggal dengan dua lajur.
Atas ialah kandungan terperinci Bagaimana untuk Menggabungkan Keputusan Pertanyaan SQL Berasingan ke dalam Lajur Tunggal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!