Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Menyelesaikan Ralat 'rujukan lajur SQL 'id' adalah samar-samar'?
Menyelesaikan Lajur "id" Samar-samar dalam Pertanyaan SQL
Ralat "rujukan lajur SQL "id" adalah samar-samar" timbul apabila pertanyaan SQL anda memasukkan lajur bernama "id" yang terdapat dalam berbilang jadual. Pangkalan data tidak dapat menentukan lajur "id" yang anda ingin gunakan.
Berikut ialah contoh ilustrasi:
<code class="language-sql">SELECT (id, name) FROM v_groups vg INNER JOIN people2v_groups p2vg ON vg.id = p2vg.v_group_id WHERE p2vg.people_id = 0;</code>
Dalam pertanyaan ini, kedua-dua v_groups
(disebut sebagai vg
) dan people2v_groups
(dinyatakan sebagai p2vg
) mengandungi lajur "id". Penyelesaiannya adalah untuk melayakkan nama lajur secara eksplisit dengan alias jadualnya:
<code class="language-sql">SELECT (vg.id, name) FROM v_groups vg INNER JOIN people2v_groups p2vg ON vg.id = p2vg.v_group_id WHERE p2vg.people_id = 0;</code>
Dengan menggunakan vg.id
, anda menyatakan dengan jelas bahawa anda merujuk lajur "id" daripada jadual v_groups
, menghapuskan kekaburan dan menghalang ralat. Teknik ini memastikan pertanyaan mengenal pasti lajur yang dimaksudkan dengan betul.
Atas ialah kandungan terperinci Bagaimanakah Saya Menyelesaikan Ralat 'rujukan lajur SQL 'id' adalah samar-samar'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!