Rumah >pangkalan data >tutorial mysql >Mengapa Pertanyaan SQL Saya Mengembalikan Ralat 'Nama Tidak Diiktiraf: pekerja'?

Mengapa Pertanyaan SQL Saya Mengembalikan Ralat 'Nama Tidak Diiktiraf: pekerja'?

Linda Hamilton
Linda Hamiltonasal
2025-01-16 15:49:09863semak imbas

Why Does My SQL Query Return an

Menyahkod "Nama Tidak Dikenali: pekerja" Ralat SQL

Menghadapi ralat "Nama tidak dikenali" dalam pertanyaan SQL ialah masalah biasa, selalunya berpunca daripada alias jadual yang hilang atau salah. Mari kita ilustrasikan ini dengan contoh praktikal.

Pertimbangkan pertanyaan SQL 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>

Ralat "Nama tidak dikenali: pekerja di [9:8]" menunjukkan masalah dengan alias employees. Isunya ialah klausa FROM tidak mempunyai alias yang diperlukan untuk kedua-dua jadual Employees dan departments.

Pertanyaan yang diperbetulkan ialah:

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

Menambah klausa AS employees dan AS departments memberikan alias dengan betul, membenarkan pertanyaan dilaksanakan tanpa ralat. Ini menyerlahkan kepentingan menggunakan alias jadual yang jelas dan tepat, terutamanya apabila bekerja dengan berbilang jadual dan cantuman. Meninggalkan atau menyalahgunakan alias mengakibatkan ralat yang menghalang pemprosesan pertanyaan yang cekap.

Atas ialah kandungan terperinci Mengapa Pertanyaan SQL Saya Mengembalikan Ralat 'Nama Tidak Diiktiraf: pekerja'?. 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