>데이터 베이스 >MySQL 튜토리얼 >여러 유사한 테이블이 있는 MySQL 쿼리에서 'where 절의 'genre' 열이 모호합니다.' 오류를 해결하는 방법은 무엇입니까?

여러 유사한 테이블이 있는 MySQL 쿼리에서 'where 절의 'genre' 열이 모호합니다.' 오류를 해결하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-27 13:40:15279검색

How to Resolve

유사한 구조를 가진 여러 테이블의 MySQL 쿼리에서 열 모호성 해결

제공된 데이터베이스 시나리오에는 동일한 데이터 구조를 가진 여러 테이블이 포함됩니다. 특정 현지화 목적. 단일 테이블에서 데이터를 가져오는 데는 문제가 없지만 여러 테이블의 데이터를 결합하고 사용자 정의 열을 기준으로 정렬하는 경우 작업이 어려워집니다. "where 절의 'genre' 열이 모호합니다."라는 오류는 MySQL이 WHERE 절에 있는 다른 테이블의 'genre' 열을 구별할 수 없기 때문에 발생합니다.

이 모호성을 해결하고 원하는 결과를 얻으려면 데이터를 검색하려면 UNION 절을 사용해야 합니다. UNION 절을 사용하면 두 개 이상의 쿼리 결과를 단일 결과 집합으로 결합할 수 있습니다. 이 경우 별도의 쿼리를 사용하여 지정된 '장르' 조건에 따라 각 테이블에서 데이터를 가져온 다음 UNION 절을 사용하여 이러한 결과를 결합할 수 있습니다.

다음은 UNION 절을 사용하여 수정된 MySQL 문입니다.

(SELECT * FROM us_music WHERE `genre` = 'punk')
UNION
(SELECT * FROM de_music WHERE `genre` = 'punk')

이 쿼리는 먼저 'us_music' 테이블에서 'genre' 열이 'punk'와 같은 모든 행을 선택합니다. 그런 다음 'genre' 조건이 동일한 'de_music' 테이블의 모든 행을 선택합니다. 그런 다음 UNION 연산자는 이 두 결과 집합을 결합하여 중복 행이 제거되도록 합니다.

UNION 절을 사용하면 쿼리가 열 모호성을 효과적으로 제거하고 비슷한 내용을 가진 여러 테이블의 데이터에 액세스하고 정렬할 수 있습니다. 구조를 원활하게 구성합니다.

위 내용은 여러 유사한 테이블이 있는 MySQL 쿼리에서 'where 절의 'genre' 열이 모호합니다.' 오류를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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