2011-08-16 5 views
0

안녕하세요 MySQL의 새로운 오전 그리고 난 다음 문MySQL의 구문 도움말

내가하고 싶은 것은 ID가 일치해야 부모에게 냉기의 모든 IOD의의 복사입니다
UPDATE parent, chill SET parent.iod=chill.iod WHERE parent.id=chill.id 

을 만들었습니다.

하지만 결과적으로 모든 업데이트 된 요오드는 오한이 아니라 오히려 11로 설정됩니다.

IOD의는

BIGINT 

내가 잘못하고 있어요 구문 또는 아무것도 개미 무슨 문제가 있나요 유형입니까?

작은 설명에 도움을 주셨습니다.

+0

무엇'진정 구별 IOD를 SELECT의 출력,'? – knittl

답변

0

mysql update syntax for join tables :

위의 예는 내부 도시 그 콤마 연산자를 사용하지만, 다수의 테이블 UPDATE 문은 LEFT 조인 등 SELECT 문 허용 조인의 어떤 유형을 사용할 수 조인.

는 다음을 시도합니다 (예뿐만 아니라 작동해야하지만) :

UPDATE parent 
INNER JOIN chill 
ON parent.id = chill.id 
SET parent.iod = chill.iod 
+0

왜 내부 조인입니까? 나는 그 질문을 제대로 이해하지 못했습니다. – ThinkCode

+0

@ThinkCode : 그는 ID가 일치하는 행만 필요로 함 →'INNER JOIN' – knittl

+0

이것은 다른 것입니까? UPDATE parent, chill SET parent.iod = chill.iod WHERE parent.id = chill.id; – ThinkCode