mysql從一張表中取出資料插入到另一張表
最近有這樣一個需求,原來的訂單表wp_order設計不合理,原來的訂單表沒有訂單詳表,只有一張主表。現在是要重構訂單表,分為訂單主表wp_order_master和訂單詳表wp_order_detail,需要把原來的wp_order中的資料拆分後插入這兩張表。
我這裡總結有3種mysql插入語句方式,分別是:
以下表1為目標表,表2為原表
- 表結構一樣
insert into 表1select * from 表2
這個方式說白了就跟複製一樣,要求2張表的所有欄位一致,否則報錯。
- 表結構不一樣
insert into 表1 (列名1,列名2,列名3) select 列1,列2,列3 from 表2
這種也不能說是表結構不一樣,其實就是有選擇性的從表2取出資料對應表1欄位插入。
- 只從另外一個表取部分欄位
insert into 表1 (列名1,列名2,列名3) values(列1,列2,(select 列3 from 表2));
這種方式適用的情況是,在從表2取出部分欄位資料的同時,表1有新的欄位也需要資料,相當於第2種方式的升級版。
我這裡採用第2種方式:
INSERT INTO wp_order_master (id,order_number,order_code,uid,cTime,pay_time,total_price,is_pay,
alipay_price,wechat_price,balance_price,cash_price,union_price,active_id,active_price,coupon_id,coupon_price,
integral_num,integral_price,erase_price,use_packet_id,order_from) SELECT id,order_number,order_code,uid,cTime,pay_time,total_price,is_pay,
alipay_price,wechat_price,balance_price,cash_price,union_price,active_id,active_price,coupon_id,coupon_price,
integral_num,integral_price,erase_price,use_packet_id,order_from FROM wp_order WHERE id BETWEEN 10 AND 20;
裡面因為測試,select的where後面加了條件。
這裡也把原order表的id插入了order_master,作為主鍵更新order_detail表。
相關文章
- db2 sql批量插入一張表插入另一張表DB2SQL
- 【SQL 資料庫】將一張資料表資訊複製到另一張資料表SQL資料庫
- mysql怎麼複製一張表的資料到另一張表MySql
- mysql 從一個表中查詢,插入到另一個表中MySql
- SQL語句將查詢結果插入到另一張表中SQL
- MySQL複製表結構和內容到另一張表中的SQL語句MySql
- Oracle中把一個查詢結果插入到一張表中Oracle
- 用sed從mysqldump全備檔案中取出某張表的表結構MySql
- mysql一張表到底能存多少資料?MySql
- django(django學習) 兩張表建立 插入資料Django
- mysql同步一張表設定MySql
- 更新一張與另一張表關聯的連線欄位記錄
- yugong之多張表oracle到mysql遷移GoOracleMySql
- MYSQL 匯出資料庫中某張表的部分數…MySql資料庫
- mysqldump 備份匯出資料排除某張表或多張表MySql
- yugong之單張表oracle到mysql遷移GoOracleMySql
- Activiti 23張資料庫表資料庫
- mysql 恢復(one)資料庫及單張表MySql資料庫
- 四、第一張基於資料的表
- ORACLE EBS中掛一張報表Oracle
- 查詢一個表的一列插入到另一個表
- 查詢mysql某張表中的所有資料(欄位)型別MySql型別
- Python操作excel(將多張excel表融合到一張表)PythonExcel
- sql查詢一張表的重複資料SQL
- MYSQL建立多張表,相同表結構,不同表名MySql
- 使用SQL語句將資料庫中的兩個表合併成一張表SQL資料庫
- mysql三張表關聯查詢MySql
- Mysql實現定時清空一張表的舊資料並保留幾條資料MySql
- 從MySQL全庫備份中恢復某個庫和某張表MySql
- Oracle中如何更新一張大表記錄Oracle
- 觸發器—一個表更新資料時同步欄位到另一個表中觸發器
- oracle為資料庫每張表建立序列Oracle資料庫
- SqlServer將資料庫中的表複製到另一個資料庫SQLServer資料庫
- 如何從MySQL全庫備份的dump檔案中恢復某張表和表結構MySql
- 檢視mysql哪張表比較大MySql
- mysql單表體積和一個庫設計多少張表為妥MySql
- 從兩張表中取資料的 SQL 能改寫成 Laravel Eloquent 的形式嗎?SQLLaravel
- Appfuse:第一張表維護APP