SQL의이 부분을 업데이트 스크립트로 사용하여 절을 업데이트 할 테이블을 포함 할 수없는 작업을 추가하려고했습니다. 이 문은 하위 쿼리를 사용하지만이 작업을 수행하는 데 어려움을 겪습니다.중첩 된 하위 쿼리 (sum)로 업데이트 제한 절을 얻으려면
Essientially 테이블 2의 필드 합계를 사용하여 테이블 1에서 vailue를 업데이트해야하지만 두 개의 다른 필드가 두 테이블에서 일치하고 필드 6을 기준으로 제한이 업데이트 절에 적용됩니다.
UPDATE table1 W SET Field1=(SELECT field2 FROM
(SELECT A.id, B.field3, SUM(A.field2) AS field2
FROM table2 A, table3 B, table4 P
WHERE A.id=B.id AND P.field6=B.field6) B) WHERE W.field6=B.field6
실세계 예에서 럭비 선수가 경기에 참여했을 때 럭비 경기에서 인정한 점수의 합계를 선택하십시오. 테이블 2에는 결과 (점수 포함)가 있습니다. 테이블 3에는 팀 시트가 있고 테이블 1과 4는 업데이트 할 플레이어 테이블입니다.
바라건대 이것은 충분히 명확하고 누군가 올바른 방향으로 나를 가리킬 수 있습니다.
UPDATE $WSLKEEP W, $WSLFIX A, $WSLFIXPLAY B
SET W.F_CONCEDED=SUM(A.F_AGAINST)
WHERE A.F_ID=B.F_GAMEID
AND B.F_NAME=W.F_NAME"
하지만 지금은 함께 붙어 : 그룹 기능의 잘못된 사용
종류는 업데이트 쿼리를 들어
정말 감사합니다. 실제로 많은 의미가 있습니다! :-) – ChelseaStats