私は2つのテーブルを持っています:
表1-IP、SN、バージョン、日付、作業中
表2-IP、SN、Vesrion
table2には、table1からまだテーブルにないIPのみを追加します。そして、table1に従ってSN +バージョンを更新します(追加した新しい行のみ)
私はここで別のテーブルからIPに従って更新を行う方法を見つけました 重複せずに追加する方法が見つかりませんでした。
これは私がやりたいことです:
table 1
IP
10.0.0.5
10.0.0.6
10.0.0.7
table2
IP
10.0.0.5
192.168.30.11
1.1.1.1
したがって、関数の最後にtable1は変更されません そしてtable2は次のようになります:
IP
10.0.0.5
192.168.30.11
1.1.1.1
10.0.0.6
10.0.0.7
ありがとう。
回答 2 件
NOT EXISTS
を使用するIP
で行を除外するには すでにtable1
にいる 。INSERT INTO table1 (IP) SELECT t1.ROU_IP FROM routers t1 WHERE NOT EXISTS (SELECT * FROM table1 t2 WHERE t2.IP = t1.ROU_IP);
関連記事
- mysqlは3つのテーブルに参加しますが、「COUNT」は重複しています
- PHPでテーブル名を入力せずにMySQLテーブル全体を表示する方法
- 同じテーブル内の2つのクエリからのMySQLOneの結果
- ajaxDjangoを使用してページを更新せずにテーブルを更新する
- 主キーなしでテーブル内のレコードを参照する方法
- MySQLテーブルの行を列にローテーションする
- WHEREを使用した同じテーブルでのMySQL結合
- lastfmスクランブルを使用してmysqlテーブルから特定の年のトップ100を見つける
- MySQLテーブルのさまざまな行の2つの最高値を見つけます
- インデックスをグループ化せずにパンダのピボットテーブル
関連した質問
- MYSQLで1つの列の値のリストを表示するにはどうすればよいですか?
- mysql UPDATEステートメントは列を1つずつ更新しますか?
- 部分的な単語一致でのMySQL内部結合
- DECLAREが間違った場所にあるのはなぜですか? [MySQL Workbench]
- MySQLの単一の更新ステートメント(+)=
- 遠隔結合を含む複数の結合を含むMariaDB/MySQLUPDATEステートメント
- MySQL Workbench:2行のデータをチェックした後に行を挿入し、テーブル全体をループします
- 上と下の値に基づいてフィールドを更新します
- mysqlのphpのすべての行のカスタム列を更新するにはどうすればよいですか?
- Mysql /複数の列の重複を無視する
このジョブを実行する2つの個別のクエリを次に示します。
存在しないレコードを表2に追加します
既存のデータを更新する