MySQL 統計當天 一周 一月等的資料

2022-07-30 22:51:20 字數 4208 閱讀 6250

## now() 函式返回當前的日期和時間 ( 執行sql語句時的時間 )

select now();

## curdate() 函式返回當前的日期

select curdate();

## curtime() 函式返回當前的時間

select curtime();

## current_date() 函式返回當前的日期

select current_date();

select current_date;

## current_time() 函式返回當前的時間

select current_time;

select current_time();

## current_timestamp 是now的同義詞 函式返回當前的日期和時間

select current_timestamp();

select current_timestamp;

## 當前日期和時間其他的 是mysql的

select localtime();

select localtimestamp();

select sysdate();

## unix_timestamp() 轉為時間戳 -- 1天86400秒 時間戳以 秒 為單位

-- 返回當前時間的unix格式數字串,或者說是 unix 時間戳(從 utc 時間'1970-01-01 00:00:00'開始的秒數),通常為十位,如 1344887103。

select unix_timestamp(now()); -- 當前的時間戳

select unix_timestamp(left(now(),10)); -- 當天00:00:00 秒的時間戳

select unix_timestamp(current_date); -- 當天00:00:00 秒的時間戳

select unix_timestamp(current_date()); -- 當天00:00:00 秒的時間戳

select unix_timestamp(current_date) + 86399; -- 當天23:59:59 秒的時間戳

select unix_timestamp(current_date()) + 86399; -- 當天23:59:59 秒的時間戳

select unix_timestamp(concat(curdate(),' ','23:59:59')); -- 當天23:59:59 秒的時間戳 拼接

select unix_timestamp(date_add(current_date, interval 86399 second)); -- 當天23:59:59 秒的時間戳 -- 當天的00:00 向後+86399秒

select unix_timestamp(date_add(current_date, interval 1 day)) - 1; -- 當天23:59:59 秒的時間戳 -- 當天的00:00 向後的一天 減1秒

今天

select * from 表名 where to_days(時間欄位名)=to_days(now());
select * from 表名 where to_days(時間欄位名)=to_days(current_date());
昨天

select * from 表名 where to_days( now( ) ) - to_days( 時間欄位名) = 1;
select * from 表名 where to_days( now( ) ) = to_days( 時間欄位名) + 1;
近7天

select * from 表名 where to_days(curdate()) - to_days(時間欄位名)<=7;
select * from 表名 where date_sub(curdate(), interval 7 day) <= date(時間欄位名);
近30天

select * from 表名 where date_sub(curdate(), interval 30 day) <= date(時間欄位名)
本月

select * from 表名 where date_format( 時間欄位名, '%y%m' ) = date_format( curdate( ) , '%y%m' )
上一月

select * from 表名 where period_diff( date_format( now( ) , '%y%m' ) , date_format( 時間欄位名, '%y%m' ) ) =1
查詢本季度資料

select * from `ht_invoice_information` where quarter(create_date)=quarter(now());
查詢上季度資料

select * from `ht_invoice_information` where quarter(create_date)=quarter(date_sub(now(),interval 1 quarter));
查詢本年資料

select * from `ht_invoice_information` where year(create_date)=year(now());
查詢上年資料

select * from `ht_invoice_information` where year(create_date)=year(date_sub(now(),interval 1 year));
查詢當前這週的資料

select name,submittime from enterprise where yearweek(date_format(submittime,'%y-%m-%d')) = yearweek(now());
查詢上週的資料

select name,submittime from enterprise where yearweek(date_format(submittime,'%y-%m-%d')) = yearweek(now())-1;
查詢上個月的資料

select name,submittime from enterprise where date_format(submittime,'%y-%m')=date_format(date_sub(curdate(), interval 1 month),'%y-%m')

select * from user where date_format(pudate,'%y%m') = date_format(curdate(),'%y%m') ;

select * from user where weekofyear(from_unixtime(pudate,'%y-%m-%d')) = weekofyear(now())

select * from user where month(from_unixtime(pudate,'%y-%m-%d')) = month(now())

select * from user where year(from_unixtime(pudate,'%y-%m-%d')) = year(now()) and month(from_unixtime(pudate,'%y-%m-%d')) = month(now())

select * from user where pudate between 上月最後一天 and 下月第一天

查詢當前月份的資料

select name,submittime from enterprise   where date_format(submittime,'%y-%m')=date_format(now(),'%y-%m')
查詢距離當前現在6個月的資料

select name,submittime from enterprise where submittime between date_sub(now(),interval 6 month) and now();

sql語句如何查詢當天,一周,一月的資料的語句

查詢當天 select from info where datediff dd,datetime,getdate 0 查詢24小時內的 select from info where datediff hh,datetime,getdate 24 查詢本週記錄 select from info whe...

sql語句如何查詢當天,一周,一月的資料的語句

sql查詢當天,一周,乙個月資料的語句 查詢當天 select from info where datediff dd,datetime,getdate 0 查詢24小時內的 select from info where datediff hh,datetime,getdate 24 查詢本週記錄 ...

mysql 查詢今天,昨天,一周,一月,上月的資料

select from 表名 where to days 時間欄位名 to days now select from 表名 where to days 時間欄位名 to days now 昨天 select from 表名 where to days now to days 時間欄位名 1 sele...