MySQL查詢日期型數值常用SQL

2021-09-20 01:37:35 字數 2063 閱讀 4237

1.mysql 獲得當前日期/時間函式:

to_days()函式返回的乙個天數,這個天數等於從epoch到給定日期的天數;

查詢今天新增的記錄

# 欄位名不需要加引號;

select * from test where to_days(add_time) = to_days(now());

查詢昨天新增的記錄

select * from test where to_days(now())-to_days(add_time) = 1;
查詢近7天新增的記錄;

# 這裡的近七天包含今天

select * from test where date_sub(curdate(), interval 6 day) <=date(add_time)

date_sub() 函式用來從給定日期減去給定的時間間隔。語法:date_sub(date,interval expr type)date引數是合法的日期表示式;

expr引數是您希望新增的時間間隔。

type可以取second/minute/hour/day/week/month/quarter/year等等

與date_sub()對應的函式是date_add()函式,用來從給定日期加上給定的時間間隔。

這裡的給定的時間間隔除了天,還可以是其他所有date_sub()函式支援的型別。

查詢本週(自然周)修改的記錄

select * from test where yearweek(update_time,1) = yearweek(now());
yearweek() 是獲取年份和週數的乙個函式,函式語法為yearweek(date[,mode]);引數mode可選。

預設情況下,是把週日,作為一周的開始。而mode則用來指定『first day of week』 以及用什麼樣的邏輯,來計算一年中的第一周。詳見此文

查詢本月新增的記錄

select * from test where date_format( add_time, '%y%m' ) = date_format( curdate( ) , '%y%m' )
date_format() 函式用於以不同的格式顯示日期/時間資料。

語法:date_format(date,format);date 引數是合法的日期。format 規定日期/時間的輸出格式。

這裡要注意的是。format中大小寫敏感,詳見w3cshcool

7.查詢上個月新增的記錄;

select * from test where period_diff(date_format(now( ) , '%y%m' ) , date_format(add_time, '%y%m' ) ) =1
查詢本季度新增的資料(第一季度為1-3月)

#如果是查詢本年,需要加上year()條件;

select * from test where quarter(add_time)=quarter(now()) and year(add_time)=year(now());

9.查詢上一季度新增的資料

select * from  test  where quarter(add_time)=quarter(date_sub(now(),interval 1 quarter)) and year(add_time)=year(now());
持續完善中.....

mysql常用日期 時間查詢

好記性不如爛筆頭 select curdate 獲取當前日期 select last day curdate 獲取本月最後一天。select date add curdate interval day curdate 1day 獲取本月第一天 select date add curdate day ...

matlab 數值型日期的轉換

我們在用 matlab 做計算時總是難免要對時間進行處理。可能有些人喜歡用 數字去表示時間,比如 20180910 這樣的表示方法。當我們讀取到這樣的時間資料時該如何轉換為 matlab 中的時間呢?通過大家會想到以下的做法,把 20180910 中的年 月 日分別提取出來,像matlab中用dat...

mysql日期查詢 mysql 查詢日期

檢視本月資料 select from content publish where date format publish time,y m date format date sub curdate interval 0 month y m 檢視上個月資料 select from content pu...