Mysql 更新マルチテーブル共同更新方法の概要

Mysql 更新マルチテーブル共同更新方法の概要

次に、2 つのテーブルを作成し、一連の SQL 文を実行します。SQL 文の実行後にテーブル内のデータがどのように変化するかを注意深く観察すると、マルチテーブル結合更新の使用方法を簡単に理解できます。

生徒テーブル クラステーブル

1. UPDATE student s 、class c SET s.class_name='test00',c.stu_name='test00' WHERE s.class_id = c.idを実行します。

生徒テーブル クラステーブル

2. UPDATE student s JOIN class c ON s.class_id = c.id SET s.class_name='test11',c.stu_name='test11' を実行します。

生徒テーブル クラステーブル

3. UPDATE student s LEFT JOIN class c ON s.class_id = c.id SET s.class_name='test22',c.stu_name='test22' を実行します。

生徒テーブル クラステーブル

4. UPDATE student s RIGHT JOIN class c ON s.class_id = c.id SET s.class_name='test33',c.stu_name='test33' を実行します。

生徒テーブル クラステーブル

5. UPDATE student s JOIN class c ON s.class_id = c.id SET s.class_name=c.name、c.stu_name=s.nameを実行します。

生徒テーブル クラステーブル

追加の知識ポイント:

MySQL マルチテーブル関連付けの更新

日常の開発では、通常、単一テーブルの更新ステートメントを記述し、複数のテーブルを関連付ける更新を記述することはほとんどありません。

SQL Server とは異なり、MySQL では、複数テーブル結合更新と選択用の複数テーブル結合クエリに使用される方法に若干の違いがあります。

具体的な例を見てみましょう。

注文の更新
  左のユーザーに参加u
    o.userId = u.idの場合
o.userName = u.name を設定します。

上記の例では、update キーワードの後に​​、複数テーブルの関連付けの結果セットが続きます。MySQL は、この複数テーブルの関連付けの結果セットを単一のテーブルとして直接扱い、この単一のテーブルに基づいて通常の更新操作を実行します。

SQL Server との若干の違いは、SQL Server の set 句は更新する特定のテーブルに従うのに対し、MySQL の set 文は更新する結果セットに従う点です (更新する特定のテーブルは set 文で設定されます)。

要約する

これで、MySQL 更新のマルチテーブル共同更新方法の概要に関するこの記事は終了です。より関連性の高い MySQL 更新のマルチテーブル共同更新コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQL のバッチ更新と複数レコードの異なる値のバッチ更新
  • MySQLでバッチを更新するいくつかの方法
  • MySQLデータテーブルフィールドの内容に対するバッチ変更、クリア、コピー、その他の更新コマンド
  • MySQLは異なるテーブルのデータのバッチ更新を実装します

<<:  Linuxコマンドに基づいてフォルダー内の特定のファイルパスを抽出します

>>:  Windows 2008 タスク プランが bat スクリプトの実行に失敗したときに 0x1 を返す問題の解決方法

推薦する

W3C チュートリアル (10): W3C XQuery アクティビティ

XQuery は、XML ドキュメントからデータを抽出するための言語です。 XQuery は、XML...

CSS クリアフロートクリア:both サンプルコード

今日はフロートのクリアについてお話します。フロートのクリアについてお話する前に、フロートとは何かを理...

VueはCanvasを使用してランダムなサイズで重なり合わない円を生成します

目次キャンバス関連文書エフェクト画像表示ケースの完全なコード親コンポーネントコードサブコンポーネント...

JavaScript - Vue でのスロットの使用: スロット

目次Vue でのスロットの使用: slotスコープ付きスロット: テンプレートタグで囲む要約するVu...

MySQL で遅い SQL 文を見つける方法

MySQL で遅い SQL ステートメントを見つけるにはどうすればよいでしょうか?これは、多くの人を...

ブラウザ間の hr 区切り文字の違い

Webページを作るときに、区切り線hrを使うことがありますが、IE6やIE7で表示するのは非常に苦痛...

Vueにおけるキーの役割と原理の詳細な説明

目次1. 結論から始めましょう2. キーの役割2.1 例2.2 上記の例を修正する2.3 例を再度修...

JavaScript でオブザーバー パターンを実装する方法

目次概要オブザーバーパターンの応用シナリオオブザーバーパターンの実装要約する概要オブザーバー パター...

HTML入門チュートリアル HTMLタグ記号をすぐにマスター

補足<br />HTML について何も知らず、HTML の始め方がまだわからない場合は、...

mysqlサーバーは--skip-grant-tablesオプションで実行されています

MySQLサーバーは--skip-grant-tablesオプションで実行されているため、このステー...

MySQL データベースの最適化: インデックスの実装原則と使用状況の分析

この記事では、例を使用して、MySQL データベースの最適化のためのインデックス実装の原則と使用方法...

MySQLで重複データを削除する詳細な例

MySQLで重複データを削除する詳細な例重複レコードには 2 つの意味があります。1 つは完全に重複...

Windows10システムにMySQL 5.7.17をインストールする

オペレーティング システム win10 MySQL は、公式 Web サイトからダウンロードした 6...

Rx レスポンシブプログラミングについての簡単な説明

目次1. 観察可能2. 高階関数3. エクスプレスボックスモデル3.1. エクスプレスボックスモデル...

Windows Server 2008 R2 で忘れたパスワードを処理する方法

Windows Server 2008R2を忘れた場合の対処方法サーバーの数が多すぎる、サーバーが多...