Rumah >pangkalan data >tutorial mysql >Mengapa My MySQL UPDATE JOIN Query Mengembalikan 'Lajur tidak diketahui dalam 'senarai medan''?

Mengapa My MySQL UPDATE JOIN Query Mengembalikan 'Lajur tidak diketahui dalam 'senarai medan''?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-14 06:41:43870semak imbas

Why Does My MySQL UPDATE JOIN Query Return

SQL UPDATE JOIN ralat pertanyaan: "Lajur tidak diketahui dalam senarai medan"

Apabila melaksanakan pertanyaan kemas kini dalam MySQL, terutamanya operasi KEMASKINI JOIN, anda mungkin menghadapi kod ralat #1054, menggesa "Lajur tidak diketahui dalam senarai medan".

Ralat ini biasanya berpunca daripada ralat sintaks dalam penggunaan backtick (`), petikan tunggal (') atau petikan berganda ("). Dalam MySQL, backtick biasanya digunakan untuk melampirkan nama lajur, manakala petikan tunggal atau berganda ialah dikhaskan untuk nilai

.

Dalam pertanyaan yang disediakan:

<code class="language-sql">UPDATE MASTER_USER_PROFILE, TRAN_USER_BRANCH
SET MASTER_USER_PROFILE.fellow=`y`
WHERE MASTER_USER_PROFILE.USER_ID = TRAN_USER_BRANCH.USER_ID
AND TRAN_USER_BRANCH.BRANCH_ID = 17</code>

Ralat berlaku kerana nilai 'y' disertakan dalam tanda belakang, yang MySQL tafsirkan sebagai rujukan kepada lajur bernama 'y'. Untuk menyelesaikan isu ini, pastikan nilai disertakan dalam petikan tunggal atau berganda dan nama lajur disertakan dalam tanda belakang.

Sintaks yang betul hendaklah:

<code class="language-sql">UPDATE MASTER_USER_PROFILE, TRAN_USER_BRANCH
SET MASTER_USER_PROFILE.fellow='y'
WHERE MASTER_USER_PROFILE.USER_ID = TRAN_USER_BRANCH.USER_ID
AND TRAN_USER_BRANCH.BRANCH_ID = 17</code>

Dengan meletakkan nilai 'y' dalam petikan tunggal, pertanyaan menetapkan nilai lajur rakan dalam jadual MASTER_USER_PROFILE dengan betul.

Atas ialah kandungan terperinci Mengapa My MySQL UPDATE JOIN Query Mengembalikan 'Lajur tidak diketahui dalam 'senarai medan''?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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