最近公司有個一次性的任務需要做: 對mysql的某張表進行分表, 將2018年的數據和2019年的數據區分開
mysql 怎麼查詢一年的數據
select * from 表 where date_format(日期,'%Y-%m-%d')='2014-04-01' 日期
select * from 表 where date_format(日期,'%Y-%m')='2014-04' 月份
select * from 表 where date_format(日期,'%Y')='2014' 年
就是date_format(日期,'%Y-%m-%d') 這裏的參數長短
1 先創建2018的表,和2019的表
create table l2data_2018 like 要區分的表
這句話表示將原表的數據結構拷貝過來,但是隻是一個空的表
create table l2data_2019 like 要區分的表
2 將原表的數據區分來依次倒入2個不同時間的表
select * from l2data where DATE_FORMAT(date,'%Y') = '2018'
如圖所示, 這裏是將2018年的所有數據全部找出, 找出後可以再將其插入到新建的表
sql如下
INSERT INTO l2data_2018 select * from l2data where DATE_FORMAT(date,'%Y') = '2018'
INSERT INTO l2data_2019 select * from l2data where DATE_FORMAT(date,'%Y') = '2019'