MySQL でフィールドまたは列のエイリアスを作成しようとすると、次のような「不明な列」エラーが発生する場合があります。次の構文:
SELECT SUM(field1 + field2) AS col1, col1 + field3 AS col3 from core
これは、col1 がクエリ内でまだ定義されていないエイリアスであるために発生します。この問題を修正するために、MySQL では、@ 記号を使用してステートメント内のユーザー変数に値を割り当てることができます。
select @code:= SUM(field1 + field2), @code+1 from abc;
この手法を利用すると、エイリアス @code を作成し、その中でその値の計算を実行できます。
注意: MySQL でユーザー変数を使用する場合、評価の順序が定義されていないことに注意することが重要です。これは、MySQL が @a に新しい値を割り当てる前に @a を評価することが予想されるかもしれませんが、この動作は保証されていないことを意味します。ユーザー変数は、特にそれを定義して使用する同じステートメント内で慎重に扱ってください。
以上が質問の形式と提供されたテキストの内容を念頭に置いて、タイトルのオプションをいくつか示します。 **オプション 1 (問題に焦点を当てる):** * **「不明な列」エラーが発生するのはなぜですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。