2016-07-15 10 views
1

왜 MySQL에서이 쿼리 오류 (1060) Duplicate column name 'studentID'이 발생합니까? 어떻게 방지 할 수 있습니까?# 1060 - 중복 된 열 이름

CREATE TEMPORARY TABLE tempTable 
    select * from member_infos 
    join contact_infos on member_infos.studentID=contact_infos.studentID 
+1

select *를 사용하지 않고 열 이름을 지정하십시오. –

답변

2

당신이 MySQL을의 USING 절 (ON 대안)를 사용하는 경우, 그것은 것입니다 만 부산물 SELECT의 결과에 그 테이블을 조인하는 데 사용되는 공유 필드의 사본.

다른 필드 공유 이름이있는 경우 USING은 도움이되지 않습니다. 동일한 이름을 가진 필드를 제외 시키거나 (별명을 지정하기 위해) 모든 필드를 명시 적으로 나열해야합니다.

USINGMySQL JOIN documention에 포함됩니다.

0

JOIN 결과에 동일한 이름의 두 열 (예 : studentID)이 포함되어 있습니다. 그 결과에서 테이블을 만들고 싶습니다. 그러나 테이블에는 고유 한 열 이름이 필요합니다.

select * from ...을 사용하지 않는 것이 가장 좋지만 모든 열의 이름을 지정하십시오.