ホームページ >データベース >mysql チュートリアル >SQL クエリに「認識されない名前: [9:8] の従業員」と表示されるのはなぜですか?

SQL クエリに「認識されない名前: [9:8] の従業員」と表示されるのはなぜですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-16 16:07:13399ブラウズ

Why Does My SQL Query Show

SQL エラーのトラブルシューティング:「認識されない名前: [9:8] の従業員」

このエラー「認識されない名前: [9:8] の従業員」は、通常、未定義のテーブル エイリアスが原因で SQL クエリで発生します。 これがどのように起こるのか、そしてそれを修正する方法を調べてみましょう。

この問題は、テーブルが適切な別名なしで参照される場合、特に ONJOIN 句内で参照される場合に発生します。 次の例を考えてみましょう:

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

employeesdepartmentsON 句で使用されていますが、使用前にエイリアスとして正式に定義されていないことに注意してください。

解決策: テーブル エイリアスの定義

この修正には、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>

AS employeesAS departments を追加することで、エイリアスを明確に定義し、曖昧さを解決し、「認識されない名前」エラーを排除します。 これにより、データベースは ON 句でどのテーブルが参照されているかを確実に認識できるようになります。

以上がSQL クエリに「認識されない名前: [9:8] の従業員」と表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。