#mysql關於查詢時間的語法
#獲取當前日期和時間的函式。2020-05-08 16:42:36
select now();
#獲取當前的日期 2020-05-08
select curdate();
#獲取當前時間 16:42:23
select curtime();
# 2020-05-08
select date(now()) from now();
select date(create_time) from 表名 limit 1;
#獲取返回日期/時間的單獨部分,比如年、月、日、小時、分鐘等等。
select extract(year_month from now()) ;
select extract(year_month from create_time) from 表名 limit 1;
#date_add將日期新增指定的時間間隔。 2020-05-09 16:57:24
select date_add(now(),interval 1 day) ;
#date_sub 將日期減去指定的時間間隔。 2020-05-07 16:58:02
select date_sub(now(),interval 1 day) ;
#datediff 獲取兩個日期之間的天數。(只有日期部分參與計算
select datediff(now(),'2020-04-08')
#dateformat 格式化日期時間 2020-05-08
select date_format(now(),'%y-%m-%d')
#1,查詢今天的繪本
select create_time from 表名 where to_days(now())=to_days(create_time);
select create_time from 表名 where date_format(curdate(),'%y-%m-%d')=date_format(create_time,'%y-%m-%d')
#2,昨天
select create_time from 表名 where to_days(now())-1=to_days(create_time);
#3,昨天以後的資料
select create_time from 表名 where to_days(now())-to_days(create_time)<=1;
#4,近7天
select create_time from 表名 where date_sub(curdate(), interval 7 day) <= date(create_time);
#5,最近乙個月
select create_time from 表名 where date_sub(curdate(), interval 1 month) <= date(create_time);
#最近乙個月,下午1點到2點的繪本出現top10次數
select * from 表名 where date_sub(curdate(), interval 1 month) <= date(create_time) and date_format(create_time,'%h-%i-%s')>='12:00:00' and date_format(create_time,'%h-%i-%s')<='13:00:00' group by book_id order by count(book_id) desc ;
#近30天
select create_time from 表名 where date_sub(curdate(),interval 30 day)<=date(create_time);
#本月select create_time from 表名 where month(create_time)=month(curdate());
select create_time from 表名 where date_format(curdate(),'%m')=date_format(create_time,'%m')
#上一月
select create_time from 表名 where month(create_time)=month(curdate())-1;
select create_time from 表名 where date_format(curdate(), '%y%m')-1=date_format(create_time,'%y%m')
select create_time from 表名 where period_diff(date_format(curdate( ),'%y%m' ),date_format(create_time,'%y%m' )) =1;
#查詢本季度資料
select create_time from 表名 where quarter(create_time)=quarter(curdate());
#查詢上季度資料
select create_time from 表名 where quarter(create_time)=quarter(curdate())-1;
select create_time from 表名 where quarter(create_time)=quarter(date_sub(curdate(),interval 1 quarter));
#查詢本年資料
select create_time from 表名 where year(create_time)=year(curdate());
#查詢上年資料
select create_time from 表名 where year(create_time)=year(curdate())-1;
select create_time from 表名 where year(create_time)=year(date_sub(curdate(),interval 1 year));
#查詢當前這週的資料
select create_time from 表名 where week(create_time)=week(curdate());
#查詢上週的資料
select create_time from 表名 where week(create_time)=week(curdate())-1;
select create_time from 表名 where week(create_time)=week(date_sub(curdate(),interval 1 week));
%a:縮寫星期名
%b:縮寫月名
%c:月,數值
%d:帶有英文本首的月中的天
%d:月的天,數值(00-31)
%e:月的天,數值(0-31)
%f:微秒
%h:小時 (00-23)
%h:小時 (01-12)
%i:小時 (01-12)
%i:分鐘,數值(00-59)
%j:年的天 (001-366)
%k:小時 (0-23)
%l:小時 (1-12)
%m:月名
%m:月,數值(00-12)
%p:am 或 pm
%r:時間,12-小時(hh:mm:ss am 或 pm)
%s:秒(00-59)
%s:秒(00-59)
%t:時間, 24-小時 (hh:mm:ss)
%u:周 (00-53) 星期日是一周的第一天
%u:周 (00-53) 星期一是一周的第一天
%v:周 (01-53) 星期日是一周的第一天,與 %x 使用
%v:周 (01-53) 星期一是一周的第一天,與 %x 使用
%w:星期名
%w:周的天 (0=星期日, 6=星期六)
%x:年,其中的星期日是周的第一天,4 位,與 %v 使用
%x:年,其中的星期一是周的第一天,4 位,與 %v 使用
%y:年,4 位
%y:年,2 位
時間間隔
microsecond、
second、minute、
hour、day、week、month、
quarter、year、second_microsecond、
minute_microsecond、minute_second、
hour_microsecond、hour_second、
hour_minute、day_microsecond、
day_second、day_minute、
day_hour、year_month
mysql查詢當前日期的乙個月內的資料
有時候我們寫sql查詢一些東西,需要限定時間是乙個月內的資料,這時候就可以使用這個語句了。乙個月到未來的活動資料 select from activity info t where t.valid y and t.act date select date add now interval 1 mon...
規劃 近乙個月的規劃
雖說計畫不如變化快,但是制定乙個短期的計畫,能知道自己最近專心該做什麼 1.整理好mfc的常用類,常用api函式。整理在visualc 的第四本筆記本上。2.細心看完一本directx教程,ultimate.game.programming.with.directx allen.sherrod,70...
mysql 查詢乙個月的資料
查詢語句 今天 select from 表名 where to days 時間欄位名 to days now 昨天 select from 表名 where to days now to days 時間欄位名 1 近7天 select from 表名 where date sub curdate i...