>데이터 베이스 >MySQL 튜토리얼 >INNER JOIN을 사용하는 MySQL UPDATE 쿼리에서 구문 오류가 발생하는 이유는 무엇입니까?

INNER JOIN을 사용하는 MySQL UPDATE 쿼리에서 구문 오류가 발생하는 이유는 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-11 03:38:10887검색

Why Does My MySQL UPDATE Query with INNER JOIN Produce a Syntax Error?

MySQL에서 Inner Join을 사용한 업데이트 쿼리: 구문 오류 문제 해결

다음 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

평가

원래 쿼리에는 비즈니스 테이블에 대해 테이블 ​​별칭이 잘못 정의되어 있었습니다. 거기에 있는 것처럼 쿼리에 b가 있어야 합니다. 이것이 유일한 구문 문제였습니다.

추가 참고 사항

오류 메시지가 누락되었습니다. 이를 제공하면 문제의 정확한 원인을 찾아내는 데 도움이 됩니다. 또한 테이블의 필드 유형(예: mapx 및 mapy)이 삽입하려는 데이터와 일치하는지 확인하세요.

위 내용은 INNER JOIN을 사용하는 MySQL UPDATE 쿼리에서 구문 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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