MySQL WHERE 句のあいまいなユーザー ID
「user_id」フィールドを使用して WHERE 句を含む MySQL クエリを実行すると、次のような問題が発生する可能性があります。エラー メッセージ「where 句の user_id があいまいです。」これは、「user_id」という名前の列を持つ複数のテーブルが存在するため、クエリがどの「user_id」フィールドを使用するかを決定できないために発生します。
これを修正するには、使用する「user_id」フィールドを指定する必要があります。プレフィックスとしてのテーブル名。たとえば、指定されたクエリでは:
SELECT user.*, user_info.* FROM user INNER JOIN user_info ON user.user_id = user_info.user_id WHERE user_id=1
クエリは、JOIN 条件と WHERE 句の両方で同じ 'user_id' フィールド名を使用します。あいまいさを解決するには、WHERE 句の 'user_id' の前にテーブル名を指定します。
... WHERE user.user_id=1
これは、'user' テーブルの 'user_id' フィールドを WHERE 句で使用する必要があることを明示的に示します。
テーブル名を指定すると曖昧さがなくなり、MySQL がクエリを正しく実行できるようになります。そうすることで、クエリが目的のフィールドとテーブルからデータを確実に取得できるようになります。
以上がMySQL が「WHERE 句のあいまいなユーザー ID」エラーをスローするのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。