>데이터 베이스 >MySQL 튜토리얼 >여러 테이블의 조인된 값을 사용하여 SQL에서 테이블을 업데이트하려면 어떻게 해야 합니까?

여러 테이블의 조인된 값을 사용하여 SQL에서 테이블을 업데이트하려면 어떻게 해야 합니까?

Susan Sarandon
Susan Sarandon원래의
2025-01-22 13:51:101038검색

How Can I Update a Table in SQL Using Joined Values from Multiple Tables?

JOIN을 사용하여 SQL Server 테이블 업데이트

JOIN을 사용하여 데이터베이스 테이블을 업데이트하는 것은 여러 테이블 간의 관계를 기반으로 데이터를 수정하는 강력한 기술입니다. Microsoft SQL Server에서는 UPDATE 문을 JOIN과 함께 사용하여 이 목적을 달성할 수 있습니다.

질문:

"item_master" 테이블의 필드를 다른 세 테이블("group_master", "Manufacturer_Master" 및 "item_master" 자체)의 JOIN 값으로 업데이트해야 합니다.

해결책:

1단계: JOIN 쿼리 작성

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

이 쿼리는 지정된 기준에 따라 세 개의 테이블과 필터에서 일치하는 모든 행을 검색합니다.

2단계: JOIN을 사용하여 필드 업데이트

다음 UPDATE 문은 JOIN 절에서 테이블 별칭(im, gm, mm)을 사용하여 "item_master" 테이블의 "mf_item_number" 필드를 "gm.SKU" 값으로 설정합니다.

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

지침:

  • 업데이트 대상 테이블은 "item_master"(별칭 "im")입니다.
  • 업데이트할 값은 "gm.SKU"("group_master" 테이블에서)입니다.
  • JOIN 절은 업데이트할 행이 주어진 조건을 충족하는지 확인합니다.
  • 이 쿼리는 "group_master" 테이블의 해당 "SKU" 값을 사용하여 지정된 조건을 충족하는 "item_master" 테이블의 모든 "mf_item_number" 필드를 업데이트합니다.

위 내용은 여러 테이블의 조인된 값을 사용하여 SQL에서 테이블을 업데이트하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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