MySQL複製表結構和表資料的SQL語句和時間函式

2021-06-21 02:04:23 字數 2123 閱讀 6024

1、mysql複製表結構和表資料的語句:完成表結構和表資料同時複製(建立表並複製資料)

mysql> create table tmp_table select * from dede_news;

query ok, 628 rows affected (2.04 sec)

records: 628 duplicates: 0 warnings: 0

說明:這種方法的乙個最不好的地方就是新錶中沒有了舊表的primary key、extra(auto_increment)等屬性,需要自己手動新增。

2、mysql複製表結構但不複製表資料的語句:(建立表並複製資料,通過條件語句控制資料為空)

mysql> create table tmp_table select * from dede_news where 1=2;

query ok, 0 rows affected (0.09 sec)

records: 0 duplicates: 0 warnings: 0

說明:通過給定1=2這個where條件,使最終選擇到的資料為空,而是只複製表結構。

3、還可以通過下面的方法只複製表結構

mysql> create table tmp_table like dede_news;

query ok, 0 rows affected (0.06 sec)

4、使用insert into 表1 select 字段 from 表2可以將指定的或者全部的表2中的資料插入到表1中(前提是資料型別一致)

mysql> insert into tmp_news select * from dede_news;

query ok, 628 rows affected (0.57 sec)

records: 628 duplicates: 0 warnings: 0

其他:1)同時刪除對個表:

drop table tmp_news,tmp_table;

2)時間函式 date_sub() 和 date_add()

mysql> select now() as now,date_add(now(),interval 5 day) as add5d,date_add(now(),interval 5 month) as add5m,date_add(now(),interval 5 year) as add5y,date_sub(now(),interval 5 day) as sub5d,date_sub(now(),interval 5 month) as sub5m,date_sub(now(),interval 5 year) as sub5y\g

*************************** 1. row ***************************

now: 2014-03-19 21:35:24

add5d: 2014-03-24 21:35:24

add5m: 2014-08-19 21:35:24

add5y: 2019-03-19 21:35:24

sub5d: 2014-03-14 21:35:24

sub5m: 2013-10-19 21:35:24

sub5y: 2009-03-19 21:35:24

1 row in set (0.00 sec)

update dede_news set createtime=date_sub(createtime,interval 1 year) where createtime > now();

說明:insert *** into *** select *** from ***  和 select *** into *** from *** 兩個語句的對比

在mysql中 insert *** into *** select *** from *** 語句可以將查詢的結果插入到資料庫表中

而使用select *** into *** from *** 語句,在是用在儲存函式中將查詢結果賦值給變數的

Mysql複製表結構 表資料

1 複製表結構及資料到新錶 create table 新錶select from 舊表 這種方法會將oldtable中所有的內容都拷貝過來,當然我們可以用delete from newtable 來刪除。不過這種方法的乙個最不好的地方就是新錶中沒有了舊表的primary key extra auto...

Mysql複製表結構 表資料

1 複製表結構及資料到新錶 create table 新錶select from 舊表 這種方法會將oldtable中所有的內容都拷貝過來,當然我們可以用delete from newtable 來刪除。不過這種方法的乙個最不好的地方就是新錶中沒有了舊表的primary key extra auto...

mysql複製表結構 表資料

mysql複製表結構 表資料 順便轉一下mysql複製表結構 表資料的方法 1 複製表結構及資料到新錶 create table 新錶 select from 舊表 這種方法會將oldtable中所有的內容都拷貝過來,當然我們可以用delete from newtable 來刪除。不過這種方法的乙個...