このガイドでは、結合を介して別のテーブルのデータを使用して SQL Server テーブルを更新する方法について詳しく説明します。 実際の例を示しながら、このプロセスを段階的に説明します。
1.テーブルの関係の定義:
まず、関係するテーブル間の関係を明確に特定します。たとえば、テーブル「sale」と「ud」について考えてみましょう。 「sale.assid」が「ud.assid」を参照する外部キーであるとします。これにより、2 つのテーブル間のリンクが定義されます。
2. UPDATE クエリの構築:
更新操作の中核は UPDATE
ステートメントにあります。 このステートメントは変更するテーブルをターゲットにしており、その後にソース テーブルとの接続を確立するための JOIN
句が続きます。
3.更新値の指定:
SET
句は、結合されたテーブルから取得した、更新する列とその新しい値を指定します。 たとえば、SET u.assid = s.assid
は、「sale.assid」の対応する値で「ud.assid」を更新します。
4.結合条件の定義:
JOIN
句は、ON
キーワードを使用して結合条件を指定します。 この例では、ON u.id = s.udid
は、「ud.id」が「sale.udid」と一致する行をリンクします。
5.クエリの例:
プロセスを示すサンプル クエリを次に示します:
<code class="language-sql">UPDATE ud u SET u.assid = s.assid FROM ud u INNER JOIN sale s ON u.id = s.udid;</code>
このクエリは、「sale」テーブル内に一致する「udid」が存在する各行の「ud.assid」を更新します。
代替アプローチ: サブクエリ:
SQL Server は、SET
句内でサブクエリを使用して更新値を取得することもサポートしています。 これは代替構文を提供します:
<code class="language-sql">UPDATE ud u SET u.assid = ( SELECT s.assid FROM sale s WHERE s.udid = u.id );</code>
重要な注意事項: パフォーマンスとデータベース システムの互換性は、優先される構文に影響を与える可能性があります。 特定のシナリオに最適なソリューションを決定するには、両方のアプローチをテストすることを検討してください。
以上が結合を使用して SQL Server テーブルを更新するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。