>데이터 베이스 >MySQL 튜토리얼 >SQL 조인을 사용하여 테이블 필드를 업데이트하는 방법은 무엇입니까?

SQL 조인을 사용하여 테이블 필드를 업데이트하는 방법은 무엇입니까?

DDD
DDD원래의
2025-01-22 14:05:11810검색

How to Update a Table Field Using SQL Joins?

JOIN을 사용한 SQL UPDATE 쿼리

여러 테이블의 조인에서 검색된 값을 기반으로 테이블의 필드를 업데이트해야 한다고 가정해 보겠습니다. 예를 들어, group_master(gm) 및 Manufacturer_Master(mm)의 데이터를 기반으로 업데이트해야 하는 mf_item_number 필드가 포함된 item_master(im) 테이블이 있을 수 있습니다.

<code class="language-sql">SELECT
    im.itemid,
    im.sku AS iSku,
    gm.SKU AS GSKU,
    mm.ManufacturerId AS ManuId,
    mm.ManufacturerName,
    im.mf_item_number,
    mm.ManufacturerID
FROM
    item_master im, group_master gm, Manufacturer_Master mm
WHERE
    im.mf_item_number LIKE 'STA%'
    AND im.sku = gm.sku
    AND gm.ManufacturerID = mm.ManufacturerID
    AND gm.manufacturerID = 34;</code>

item_master의 mf_item_number 필드를 업데이트하려면 다음 SQL 문을 사용할 수 있습니다.

<code class="language-sql">UPDATE im
SET mf_item_number = gm.SKU
FROM item_master im
JOIN group_master gm ON im.sku = gm.sku
JOIN Manufacturer_Master mm ON gm.ManufacturerID = mm.ManufacturerID
WHERE im.mf_item_number LIKE 'STA%' AND gm.manufacturerID = 34;</code>

이 쿼리는 Manufacturer_Master와 관련된 조건으로 필터링되는 group_master의 SKU 값을 기반으로 item_master의 mf_item_number 필드를 업데이트합니다.

다음은 조인을 사용한 일반 업데이트 쿼리의 예입니다.

<code class="language-sql">UPDATE A
SET foo = B.bar
FROM TableA A
JOIN TableB B ON A.col1 = B.colx
WHERE ...;</code>

이 예에서 UPDATE 절은 FROM 절의 테이블 별칭 A를 참조하여 TableA와 TableB 간의 조인에서 검색된 B.bar 값을 기반으로 foo 필드를 업데이트합니다.

위 내용은 SQL 조인을 사용하여 테이블 필드를 업데이트하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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