ホームページ > データベース > mysql チュートリアル > 一致する ID を使用してある SQL テーブルを別の SQL テーブルから更新するにはどうすればよいですか?

一致する ID を使用してある SQL テーブルを別の SQL テーブルから更新するにはどうすればよいですか?

Linda Hamilton
リリース: 2025-01-23 00:49:08
オリジナル
182 人が閲覧しました

How to Update One SQL Table from Another Using a Matching ID?

一致する ID に基づいて SQL テーブルを更新する

このガイドでは、ある SQL テーブル (Sales_Import) のレコードを別のテーブル (RetrieveAccountNumber) の対応するデータを使用して更新し、共通の LeadID で照合する方法を説明します。 一般的な課題は、null 値を検出することなく、AccountNumber の値を使用して Sales_Import 内の RetrieveAccountNumber を更新することです。 このソリューションでは、UPDATE.JOIN を含む

ステートメントを利用します。

JOIN を使用した効率的なレコードの更新

UPDATE ... FROM ... JOIN 構文を使用すると、複数のテーブルのデータを組み合わせて効率的に更新できます。このメソッドにより、一致するレコードのみが更新されます。

MS SQL サーバー:

<code class="language-sql">UPDATE Sales_Import
SET AccountNumber = RAN.AccountNumber
FROM Sales_Import SI
INNER JOIN RetrieveAccountNumber RAN ON SI.LeadID = RAN.LeadID;</code>
ログイン後にコピー

MySQL と MariaDB:

<code class="language-sql">UPDATE Sales_Import SI, RetrieveAccountNumber RAN
SET SI.AccountNumber = RAN.AccountNumber
WHERE SI.LeadID = RAN.LeadID;</code>
ログイン後にコピー

説明:

  • UPDATE Sales_Import: 更新操作のターゲット テーブルを指定します。
  • SET AccountNumber = RAN.AccountNumber: これにより、AccountNumber テーブル (RetrieveAccountNumber) の RAN.AccountNumberAccountNumber テーブルの Sales_Import 列に割り当てられます。
  • FROM Sales_Import SI INNER JOIN RetrieveAccountNumber RAN ON SI.LeadID = RAN.LeadID (MS SQL) または UPDATE Sales_Import SI, RetrieveAccountNumber RAN WHERE SI.LeadID = RAN.LeadID (MySQL/MariaDB): これにより、LeadID に基づいて 2 つのテーブルが結合され、一致する行のみが結合されます。 IDが更新されます。 INNER JOIN (MS SQL) または WHERE 句 (MySQL/MariaDB) は、一致基準として機能します。

このアプローチでは、両方のテーブルに一致する LeadID が存在する行のみを更新することで、NULL 値の問題に直接対処します。 これにより、よりクリーンで効率的な更新プロセスが実現します。

以上が一致する ID を使用してある SQL テーブルを別の SQL テーブルから更新するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート