>  기사  >  데이터 베이스  >  MySQL WHERE 절에서 모호한 \'user_id\' 열을 지정하는 방법은 무엇입니까?

MySQL WHERE 절에서 모호한 \'user_id\' 열을 지정하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-23 17:26:02214검색

How to Specify the Ambiguous 'user_id' Column in a MySQL WHERE Clause?

MySQL 'user_id' WHERE 절의 모호성 해결

열 이름을 공유하는 여러 테이블로 작업할 때 MySQL에서는 다음을 사용할 때 모호함이 발생할 수 있습니다. WHERE 절의 해당 열입니다. 이는 where 절의 'user_id' 오류 메시지에서 분명합니다.

예제 쿼리를 고려하세요.

SELECT user.*, user_info.* 
FROM user 
INNER JOIN user_info ON user.user_id = user_info.user_id
WHERE user_id=1

이 쿼리에서는 'user' 및 'user_info' 테이블 모두 'user_id' 열이 있습니다. 그러나 MySQL은 WHERE 절에 어떤 'user_id' 열을 사용할지 결정할 수 없습니다.

모호성 해결

모호성을 해결하려면 어떤 'user_id' 열을 지정해야 합니다. 사용할 열입니다. 이는 아래와 같이 테이블 이름을 열 이름에 접두사로 추가하여 달성할 수 있습니다.

... WHERE user.user_id=1

'user.user_id'를 지정하면 'user_id'를 사용하겠다고 명시적으로 선언합니다. WHERE 절에 있는 'user' 테이블의 열입니다.

이 설명을 통해 MySQL은 모호한 오류인 where 절에서 'user_id'가 발생하지 않고 쿼리를 실행할 수 있습니다. WHERE 절에서 모호한 열 이름을 참조할 때는 항상 테이블 접두사를 지정하여 향후 이와 유사한 문제를 방지해야 합니다.

위 내용은 MySQL WHERE 절에서 모호한 \'user_id\' 열을 지정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.