Rumah >pangkalan data >tutorial mysql >Mengapa Pertanyaan SQL Saya Menunjukkan 'Nama tidak dikenali: pekerja di [9:8]'?

Mengapa Pertanyaan SQL Saya Menunjukkan 'Nama tidak dikenali: pekerja di [9:8]'?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-16 16:07:13399semak imbas

Why Does My SQL Query Show

Menyelesaikan masalah Ralat SQL: "Nama tidak dikenali: pekerja di [9:8]"

Ralat ini, "Nama tidak dikenali: pekerja di [9:8]," biasanya timbul dalam pertanyaan SQL disebabkan oleh alias jadual yang tidak ditentukan. Mari kita periksa bagaimana perkara ini berlaku dan cara membetulkannya.

Masalah timbul apabila jadual dirujuk tanpa alias yang betul, terutamanya dalam klausa ON JOIN. Pertimbangkan contoh ini:

<code class="language-sql">SELECT 
    employees.name AS employee_name,
    employees.role AS employee_role,
    departments.name AS department_name
FROM 
    `strange-calling-318804.employee_data.Employees`
    JOIN 
    `strange-calling-318804.employee_data.departments` 
    ON employees.department_id = departments.department_id</code>

Perhatikan bahawa employees dan departments digunakan dalam klausa ON, tetapi belum ditakrifkan secara rasmi sebagai alias sebelum penggunaannya.

Penyelesaian: Menentukan Alias ​​Jadual

Pembetulan melibatkan pemberian alias secara eksplisit menggunakan kata kunci AS:

<code class="language-sql">SELECT 
    employees.name AS employee_name,
    employees.role AS employee_role,
    departments.name AS department_name
FROM 
    `strange-calling-318804.employee_data.Employees` AS employees
    JOIN 
    `strange-calling-318804.employee_data.departments` AS departments 
    ON employees.department_id = departments.department_id</code>

Dengan menambahkan AS employees dan AS departments, kami mentakrifkan alias dengan jelas, menyelesaikan kekaburan dan menghapuskan ralat "Nama tidak dikenali". Ini memastikan pangkalan data memahami jadual mana yang dirujuk dalam klausa ON.

Atas ialah kandungan terperinci Mengapa Pertanyaan SQL Saya Menunjukkan 'Nama tidak dikenali: pekerja di [9:8]'?. 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