Left Outter Sertai tingkah laku yang tidak dijangka: lebih banyak baris daripada jadual kiri
Kesalahpahaman umum mengenai gabungan luar kiri adalah bahawa set hasil akan sentiasa mempunyai baris yang sama atau lebih sedikit daripada meja kiri. Walau bagaimanapun, ini tidak selalu benar. Bilangan baris boleh melebihi kiraan baris meja kiri di bawah keadaan tertentu.Isu ini diperhatikan dalam pertanyaan menggunakan gabungan luar kiri antara "susp.susp_visits" (jadual kiri) dan "data.dim_member" (jadual kanan). Hasil gabungan mempunyai lebih banyak baris daripada 4935 baris dalam "susp.susp_visits".
Memahami Left Outter Joins
Fungsi Luar Kiri Join seperti berikut:
Mengapa baris tambahan muncul
Baris tambahan tidak dicipta dengan menduplikasi baris meja kiri, melainkan oleh struktur meja yang betul. Masalahnya timbul apabilaberbilang baris dalam jadual yang betul ("data.dim_member") sepadan dengan tunggal baris di meja kiri ("susp.susp_visits"). Contohnya, jika "memid" dalam "susp.susp_visits" sepadan dengan pelbagai nilai "keahlian" dalam "data.dim_member", gabungan itu akan menghasilkan baris output berganda untuk baris jadual kiri tunggal, dengan itu meningkatkan baris keseluruhan kiraan.
Penyelesaian
untuk mengelakkan inflasi baris ini di luar kiri bergabung:
Atas ialah kandungan terperinci Mengapa luar kiri saya menyertai lebih banyak baris daripada wujud di meja kiri?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!