[解決済み] 同じMySQLテーブル内のレコードを複製/コピーする
2023-05-08 15:51:30
質問
ずっと探しているのですが、簡単な解決策が見つかりません。私はテーブルのレコードを複製したいのですが、もちろん、ユニークな主キーは更新される必要があります。
私はこのクエリを持っています。
INSERT INTO invoices
SELECT * FROM invoices AS iv WHERE iv.ID=XXXXX
ON DUPLICATE KEY UPDATE ID = (SELECT MAX(ID)+1 FROM invoices)
を変更するだけであることが問題です。
ID
を変更するだけであることです。誰かこれを修正する方法を知っていますか?
//edit: フィールド名は時間の経過とともに変わる可能性があるので、すべてのフィールド名を入力せずにこれを行いたいと思います。
どのように解決するのですか?
私が通常行っている方法は、一時テーブルを使用することです。 それはおそらく計算上効率的ではありませんが、それは大丈夫だと思われる!私は、レコード99を完全に複製し、レコード100を作成します。ここでは、レコード99を丸ごと複製して、レコード100を作成しています。
CREATE TEMPORARY TABLE tmp SELECT * FROM invoices WHERE id = 99;
UPDATE tmp SET id=100 WHERE id = 99;
INSERT INTO invoices SELECT * FROM tmp WHERE id = 100;
これでうまくいくといいのですが。
関連
-
mysqlインデックスが長すぎる特殊なキーが長すぎる解決策
-
[解決済み] MySQLでdatetimeとtimestampのどちらのデータ型を使用すべきですか?
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] MySQLでコマンドラインを使用してユーザーアカウントのリストを取得するにはどうすればよいですか?
-
[解決済み] MySQLデータベースのテーブルのサイズを取得する方法は?
-
[解決済み] MySQLテーブルへの挿入または存在する場合の更新
-
[解決済み] MySQLで重複する値を検索する
-
[解決済み] MySQLの重複レコードを検索する
-
[解決済み】MySQL ON DUPLICATE KEY UPDATEで1クエリで複数行挿入する場合
-
[解決済み】MySQLのテーブル、インデックス、データを複製する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
MySQLとOracleの一括挿入SQLの汎用的な記述例
-
MySQLのselect、distinct、limitの使い方
-
Mysqlデータベースの手動および定期的なバックアップ手順
-
[解決済み】ValueError: 値の長さがインデックスの長さと一致しない|Pandas DataFrame.unique()
-
[解決済み】文字列からuniqueidentifierに変換する際に変換に失敗する - 2つのGUIDの場合
-
mysql がエラーを報告します。不明な文字セットです。'utf8mb4'
-
Mysqlの使用中に発生したエラーの一部
-
[解決済み] KEYキーワードは何を意味するのか?
-
[解決済み] SQLを使用してSUMとSUBTRACTを行うには?
-
[解決済み] MySQLの複数行を1つのフィールドに連結することはできますか?