L'utilisation de MySQL pour interroger des données temporelles est souvent rencontrée dans l'utilisation quotidienne de PHP. Cet article présentera l'interrogation de diverses données temporelles.
Requête mysql pour ce trimestre
Aujourd'hui
select * from 表名 where to_days(时间字段名) = to_days(now());
Hier
SELECT *FROM表名WHERE TO_DAYS( NOW( ) ) – TO_DAYS( 时间字段名) <= 1
7 jours
SELECT *FROM表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(时间字段名)
Près de 30 jours
SELECT *FROM表名 where DATE_SUB(CURDATE(), INTERVAL 30 DAY) <= date(时间字段名)
Ce mois-ci
SELECT *FROM表名 WHERE DATE_FORMAT( 时间字段名, ‘%Y%m’ ) = DATE_FORMAT( CURDATE( ) , ‘%Y%m’ )
Mois précédent
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 enterprisewhere 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();
查询上个月的数据 select name,submittime from enterprisewhere date_format(submittime,’%Y-%m’)=date_format(DATE_SUB(curdate(), INTERVAL 1 MONTH),’%Y-%m’)
select*from`user`whereDATE_FORMAT(pudate,‘%Y%m‘)=DATE_FORMAT(CURDATE(),‘%Y%m‘) ; select * from user where WEEKOFYEAR(FROM_UNIXTIME(pudate,’%y-%m-%d’)) = WEEKOFYEAR(now())
select* fromuser whereMONTH(FROM_UNIXTIME(pudate,‘%y-%m-%d‘))=MONTH(now())
select* from[user] whereYEAR(FROM_UNIXTIME(pudate,‘%y-%m-%d‘))=YEAR(now()) andMONTH(FROM_UNIXTIME(pudate,‘%y-%m-%d‘))=MONTH(now())
select* from[user] wherepudatebetween上月最后一天 and下月第一天
wheredate(regdate)=curdate();
select*fromtestwhereyear(regdate)=year(now())andmonth(regdate)=month(now())andday(regdate)=day(now())
SELECT date( c_instime ) ,curdate( )FROM `t_score`WHERE 1LIMIT 0 , 30
Cet article présente un certain nombre de données temporelles couramment utilisées. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois.
Recommandations associées :
Comment utiliser les méthodes de base de données pour enregistrer des sessions
Cinq façons d'empêcher l'injection SQL
À propos de la haute disponibilité de MySQL : veille à chaud double maître Keepalived
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!