2013-07-17 19 views
0

뷰의 값으로 테이블을 업데이트하려고합니다. "- 알 수없는 열 'temp_status_date.status_date' 'where 절'에 # 1054" 내가 잘못 뭐하는 거지 MySQL 업데이트가 뷰와 결합하는 데 문제가 있습니다

UPDATE member, temp_status_date SET member.status_date = temp_status_date.status_date WHERE member.status_date != temp_status_date.status_date

가 phpMyAdmin을에서 오류를주고있다 : 현재이 코드를 사용하고 있습니다? 공식 MySQL 설명서에 따르면이 구문이 올바른 구문입니까? 아닙니다.

답변

0

이 시도 : 그것은 여전히 ​​오류를 반환 것

UPDATE member JOIN temp_status_date ON 
    member.status_date != temp_status_date.status_date 
SET member.status_date = temp_status_date.status_date; 
+0

. ON 절에 다른 조건을 추가했습니다. 올바른 절을 업데이트해야하기 때문입니다. ! 'UPDATE 회원 member.status_date ON temp_status_date 가입하세요 = temp_status_date.status_date 및 member.member_id = temp_status_date.member_id SET의 member.status_date = temp_status_date.status_date' 나는 다음과 같은 오류 얻을 : "# 1054 - 알 수없는 열 'temp_status_date .status_date 'in on clause' " – linucksrox

+0

문제를 확인할 수있었습니다. 내가 만든 뷰는 열 별칭을 사용하지 않았으므로 이름은 status_date 대신 실제로 MAX (member_status_history.status_date)였습니다. 그 후 업데이트가 작동했습니다. 감사! 'UPDATE 회원 member.status_date ON temp_status_date 가입하세요 = 'MAX (member_status_history.status_date)' 및 member.member_id = temp_status_date.member_id SET의 member.status_date = 'MAX (member_status_history.status_date)';!' – linucksrox

관련 문제