一、復制表里面的一條記錄并插入表里面\x0d\x0a ① insert into article(title,keywords,desc,contents) select title,keywords,desc,contents from article where article_id = 100;\x0d\x0a\x0d\x0a二、復制表里的多條數據/記錄,并插入到表里面\x0d\x0a ① INSERT INTO `power_node`(title,type,status) SELECT title,type,status FROM power_node WHERE id
共青城網站制作公司哪家好,找成都創新互聯!從網頁設計、網站建設、微信開發、APP開發、成都響應式網站建設公司等網站項目制作,到程序開發,運營維護。成都創新互聯公司2013年成立到現在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選成都創新互聯。
回答于?2022-11-16
這個確實簡單
mysql支持這種復制
語法:
insert
into
`tb`(`field1`,`field2`..)
select
`field1`,`field2`..
from
`tb`;
注意修改為你自己的表名和字段名
兩個字段列表(`field1`,`field2`..)數量要相同
你要全字段復制,就把除了自增字段之外的所有字段都列出來
1、復制表結構(語法
creata
table
舊表
select
*
from
新表)
create
table
t1(
id
int
unsigned
auto_increment
primary
key,
name
varchar(32)
not
null
default
'',
pass
int
not
null
default
);
desc
查看表結構
創建表
t2
同時復制表
t1
表結構
create
table
t2
select
*
from
t1;
desc
t2
查看表結構
注意:兩張的表字段結構一樣,但是
主鍵
primary
key
和
自增
auto_increment
沒有了,所以這種方法不推薦大家使用,那如何才能創建出兩張完全一樣的表呢,辦法肯定有的,如下面語句。
create
table
t2
like
t1;
這就可以創建一張
t2
和
t1
完全一樣的表了。
2、指定字段復制表結構
語法:
create
table
新表
select
字段1,字段2
…
from
舊表
3、復制表中數據
假設要把表
t1
中的數據全部復制到表
t2中
insert
into
t2
select
* from
t1;
如果只想復制某個字段
insert
into
t2(字段1,字段2)
select
字段1,字段2 from
t1;
我google了一下大概有一下幾個方法,
1.復制表結構及數據到新表
CREATE TABLE 新表 SELECT * FROM 舊表
2.只復制表結構到新表
CREATE TABLE 新表 SELECT * FROM 舊表 WHERE 1=2
即:讓WHERE條件不成立.
3.復制舊表的數據到新表(假設兩個表結構一樣)
INSERT INTO 新表 SELECT * FROM 舊表
4.復制舊表的數據到新表(假設兩個表結構不一樣)
INSERT INTO 新表(字段1,字段2,.......) SELECT 字段1,字段2,...... FROM 舊表