Dalam mysql, format penyimpanan data biasanya diuruskan dalam jadual berasingan Walaupun kaedah ini boleh meningkatkan kecekapan pertanyaan data, ia juga membawa tahap kesukaran pengurusan tertentu. Dalam aplikasi praktikal, biasanya perlu melakukan operasi pertanyaan pada berbilang sub-jadual Dalam kes ini, fungsi pertanyaan jadual gabungan MySQL perlu digunakan.
Pertanyaan gabungan merujuk kepada penggabungan data daripada berbilang jadual ke dalam set hasil mengikut peraturan tertentu. Dalam mysql, pertanyaan gabungan jadual boleh dilaksanakan dengan menggunakan sintaks seperti kesatuan, kesatuan semua, dan bergabung. Berikut akan memperkenalkan kesan penggunaan dan pertanyaan sintaks ini masing-masing.
sintaks kesatuan boleh menggabungkan berbilang hasil pertanyaan ke dalam satu set hasil dan mengembalikannya. Perlu diingatkan bahawa operasi kesatuan akan mengalih keluar pendua secara automatik. Jika anda perlu mengembalikan semua data, anda perlu menggunakan kesatuan semua operasi.
Format sintaks adalah seperti berikut:
select 列名 from 表1 union select 列名 from 表2 select 列名 from 表1 union all select 列名 from 表2
Sebagai contoh, katakan kita mempunyai dua sub-jadual pengguna1 dan pengguna2 Mereka mempunyai struktur yang sama dan kedua-duanya mempunyai lajur id dan nama pernyataan pertanyaan sql berikut Cantumkan mereka ke dalam set hasil:
select id,name from users1 union all select id,name from users2;
sintaks sertai boleh menyertai berbilang jadual dengan menyatakan syarat sertai dan kembalikan rekod yang memenuhi syarat .
Format sintaks adalah seperti berikut:
select 表1.列1,表2.列1 from 表1 join 表2 on 表1.列1=表2.列1
Sebagai contoh, katakan kita mempunyai dua sub-jadual pengguna1 dan pengguna2. Kedua-dua jadual mempunyai medan yang berkaitan dengan bandar pernyataan pertanyaan kepada Mereka disambungkan:
select users1.id,users1.name,users2.city from users1 join users2 on users1.city=users2.city;
Subquery merujuk kepada menyarangkan pernyataan pilihan lain dalam pernyataan pilih, yang boleh menapis lagi hasil pertanyaan .
Sebagai contoh, katakan kami mempunyai pesanan sub-jadual, yang mengandungi ID dan amaun transaksi item Kami ingin menanyakan jumlah urus niaga dan jumlah urus niaga purata bagi setiap item Pernyataan pertanyaan SQL:
select id,sum(amount) as total,avg(amount) as average from (select id,amount from orders) as temp group by id;
Di atas adalah penggunaan dan kesan tiga sintaks pertanyaan jadual mysql Dalam aplikasi sebenar, anda boleh memilih kaedah yang sepadan mengikut keperluan anda untuk pertanyaan data dan kerja statistik.
Atas ialah kandungan terperinci hasil pertanyaan gabungan jadual mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!