「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > SQLクエリがエイリアス時間を使用するときに「Where Where Clause」エラー「不明な列」をレポートするのはなぜですか?

SQLクエリがエイリアス時間を使用するときに「Where Where Clause」エラー「不明な列」をレポートするのはなぜですか?

2025-04-12に投稿されました
ブラウズ:403

Why Does My SQL Query Fail with

SQLクエリは、エイリアスによる「句の不明な列」エラーを引き起こします

質問:

selectステートメントでエイリアスを使用したクエリはエラーを引き起こし、Whereステートメントの未知のエイリアス列を促します。たとえば、次のクエリはこのエラーをトリガーします:

SELECT u_name AS user_name FROM users WHERE user_name = "john";

説明する:

sql実行順序は右から左にあります。この例では、Select句の前に句が実行されます。したがって、where句を解析する場合、エイリアス user_name はまだ定義されていません。

解決:

この問題を解決するには、Where句の元の列名を使用できます。

SELECT u_name AS user_name FROM users WHERE u_name = "john";
からuser_nameとしてu_nameをユーザーからselect user_name

または句のブラケットにエイリアス列名を囲む:

SELECT u_name AS user_name FROM users WHERE (user_name = "john");
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3