집 >데이터 베이스 >MySQL 튜토리얼 >내 MySQL UPDATE JOIN 쿼리에서 컴파일 오류가 발생하는 이유는 무엇입니까?
조인 테이블 쿼리 업데이트 관련 MySQL 문제
MySQL 조인 쿼리를 사용하여 테이블을 업데이트하려고 시도하는 중에 사용자에게 컴파일 오류가 발생했습니다. 그들이 사용한 쿼리는 다음과 같습니다.
UPDATE b SET b.mapx = g.latitude, b.mapy = g.longitude FROM business AS b INNER JOIN business_geocode g ON b.business_id = g.business_id WHERE (b.mapx = '' OR b.mapx = 0) AND g.latitude > 0
필드 이름이 정확함에도 불구하고 쿼리를 컴파일하지 못했습니다.
해결책:
시급 쿼리를 분석한 결과, 표시된 것처럼 열 이름 앞에 테이블 별칭을 배치하면 오류를 해결할 수 있음을 발견했습니다. 아래:
UPDATE business AS b INNER JOIN business_geocode AS g ON b.business_id = g.business_id SET b.mapx = g.latitude, b.mapy = g.longitude WHERE (b.mapx = '' or b.mapx = 0) and g.latitude > 0
업데이트:
사용자가 쿼리로 인해 여전히 구문 오류가 발생했음을 확인한 후 구문을 확인하기 위해 테스트 테이블이 생성되었습니다. 수정된 쿼리는 MySQL 5.5.8에 대해 테스트되었으며 아래와 같이 구문 오류가 발생하지 않았습니다.
mysql> UPDATE business AS b -> INNER JOIN business_geocode AS g ON b.business_id = g.business_id -> SET b.mapx = g.latitude, -> b.mapy = g.longitude -> WHERE (b.mapx = '' or b.mapx = 0) and -> g.latitude > 0; Query OK, 0 rows affected (0.00 sec) Rows matched: 0 Changed: 0 Warnings: 0
위 내용은 내 MySQL UPDATE JOIN 쿼리에서 컴파일 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!