programing

UPDATE 쿼리에서 3개의 테이블 JOIN을 수행하려면 어떻게 해야 합니까?

bestcode 2022. 9. 8. 22:06
반응형

UPDATE 쿼리에서 3개의 테이블 JOIN을 수행하려면 어떻게 해야 합니까?

질문을 해서 이 답변을 받았는데 도움이 되었습니다.

   UPDATE TABLE_A a JOIN TABLE_B b
   ON a.join_col = b.join_col AND a.column_a = b.column_b
   SET a.column_c = a.column_c + 1

이렇게 테이블이 3개 있으면 이렇게 하려고 합니다.

    UPDATE tableC c JOIN tableB b JOIN tableA a

제 질문은 기본적으로...3개의 테이블 조인(join)이 가능한가?UPDATE스테이트먼트?그러면 올바른 구문은 무엇일까요?

다음 작업을 해야 합니까?

 JOIN tableB, tableA
 JOIN tableB JOIN tableA

대답은 '그렇다'고 할 수 있습니다.

다음과 같이 시도해 보십시오.

UPDATE TABLE_A a
    JOIN TABLE_B b ON a.join_col = b.join_col AND a.column_a = b.column_b
    JOIN TABLE_C c ON [condition]
SET a.column_c = a.column_c + 1

일반 업데이트 가입의 경우:

UPDATE TABLEA a
JOIN TABLEB b ON a.join_colA = b.join_colB
SET a.columnToUpdate = [something]

같은 결과를 얻기 위한 다른 방법으로는JOIN키워드를 입력해 주세요.

UPDATE TABLE_A, TABLE_B
SET TABLE_A.column_c = TABLE_B.column_c + 1
WHERE TABLE_A.join_col = TABLE_B.join_col

아래는 다음 두 가지를 모두 포함하는 업데이트 쿼리입니다.JOIN그리고.WHERE같은 방법으로 여러 join/where 구를 사용할 수 있습니다.

UPDATE opportunities_cstm oc JOIN opportunities o ON oc.id_c = o.id
 SET oc.forecast_stage_c = 'APX'
 WHERE o.deleted = 0
   AND o.sales_stage IN('ABC','PQR','XYZ')

대체 일반 계획:

UPDATE table A
JOIN table B ON {join fields}
JOIN table C ON {join fields}
JOIN {as many tables as you need}
SET A.column = {expression}

예제:

UPDATE person P
JOIN address A ON P.home_address_id = A.id
JOIN city C ON A.city_id = C.id
SET P.home_zip = C.zipcode;

네, 업데이트 스테이트먼트에 대해 테이블 조인을 수행할 수 있습니다.다음은 예를 제시하겠습니다.

UPDATE customer_table c

  JOIN
      employee_table e
      ON c.city_id = e.city_id
  JOIN
      anyother_ table a
      ON a.someID = e.someID

SET c.active = "Yes"

WHERE c.city = "New york";

포스트그레의 경우SQL의 예:

UPDATE TableA AS a
SET param_from_table_a=FALSE -- param FROM TableA
FROM TableB AS b
WHERE b.id=a.param_id AND a.amount <> 0;

어떤 답변도 나에게 효과가 없다. 나는 이것을 mysql 매뉴얼에서 찾을 수 있다.

UPDATE T1,T2 INNER JOIN T2 ON T1.C1 = T2.C1 SET T1.C2 = T2.C2,       T2.C3 = expr WHERE condition

언급URL : https://stackoverflow.com/questions/15209414/how-can-i-do-three-table-joins-in-an-update-query

반응형