Maison >base de données >tutoriel mysql >Résumé des fonctions de date dans MySQL

Résumé des fonctions de date dans MySQL

黄舟
黄舟original
2017-09-26 14:09:393405parcourir

Concernant les fonctions de date et d'heure MySQL, je peux toujours trouver de nouvelles fonctionnalités à chaque fois, je fais donc simplement un arrangement unifié et complète la bibliothèque de notes. Il peut y avoir quelques omissions, bienvenue à ajouter.

Cet article a compilé 30 fonctions d'heure et de date, divisées en 4 paragraphes pour analyse, voir ci-dessous pour plus de détails.

1 Obtenez la fonction heure

  • Obtenez l'heure actuelle

    • sysdate()

    • now(), current_timestamp(), current_timestamp, LOCALTIME, LOCALTIME(), LOCALTIMESTAMP, LOCALTIMESTAMP()

  • repos ns

    • dormir(n)

  • Exemple

    • Même point : obtenir l'heure actuelle

    • Différence : quand est l'heure renvoyée, la valeur temporelle de l'exécution de SQL ou appeler la fonction

    • sysdate(), renvoie la valeur de l'heure au moment où la fonction est appelée

    • now (), current_timestamp()/current_timestamp, LOCALTIME, LOCALTIME(), LOCALTIMESTAMP, LOCALTIMESTAMP() renvoie la valeur temporelle lorsque l'instruction est appelée

    • Veuillez l'effacer clairement pendant l'utilisation. La différence entre les trois

    • now(), current_timestamp( ), current_timestamp, LOCALTIME, LOCALTIME() , LOCALTIMESTAMP, LOCALTIMESTAMP()

2 Fonction de calcul du temps

  • Différence horaire

    • datediff(date1, date2), timediff(time1, time2), timestampdiff(interval,datetime_expr1,datetime_expr2)

  • Ajout et soustraction de temps

    • date_sub(date, INTERVAL expr type )

    • DATE_ADD(date,INTERVAL type d'expression)

    • ajouter une date (date, type d'expr INTERVAL), timestampadd (intervalle, nombre, horodatage)

  • Exemple

    • La différence entre les deux temps

    • l'intervalle peut être :

    • FRAC_SECOND millisecondes, SECOND secondes, MINUTE minutes, HOUR heure

    • JOUR jour, SEMAINE semaine, MOIS mois, TRIMESTRE trimestre, ANNÉE année

    • La différence de temps entre la soustraction de deux fois. Notez qu'elle doit être dans le même format

    • Deux Soustrayez les dates pour obtenir le nombre de jours. Notez que les deux doivent être dans le même format

    • <.>

    • datediff( date1, date2 )
    • timediff( time1 , time2 )
    • TIMESTAMPDIFF(intervalle ,datetime_expr1,datetime_expr2)

  • date_sub (date, type d'expr INTERVALLE)

    • Date moins l'intervalle de temps spécifié.
    • Si expr est positif, alors cet intervalle de temps est soustrait ; si expr est négatif, soustraire un nombre négatif équivaut à une addition
    • Le Le paramètre date est une expression de date légale. Le paramètre expr est l'intervalle de temps que vous souhaitez ajouter. Le type peut faire référence à ce qui suit
    • @date = '2017-09-09 09:09:09'
    • Type 值                


      MICROSECOND 十分之一秒 , ±n date_sub( @date ,INTERVAL 2 MICROSECOND ) 2017-09-09 09:09:08.999998
      SECOND date_sub( @date ,INTERVAL 2 SECOND ) 2017-09-09 09:09:07
      MINUTE 分钟 date_sub( @date ,INTERVAL 2 MINUTE ) 2017-09-09 09:07:09
      HOUR 小时 date_sub( @date ,INTERVAL 2 HOUR) 2017-09-09 07:07:09
      DAY date_sub( @date ,INTERVAL 2 DAY ) 2017-09-07 09:09:09
      WEEK date_sub( @date ,INTERVAL 2 WEEK ) 2017-08-26 09:09:09
      MONTH date_sub( @date ,INTERVAL 2 MONTH ) 2017-07-09 09:09:09
      QUARTER(季度,3个月) 季度 date_sub( @date ,INTERVAL 2 QUARTER ) 2017-03-09 09:09:09
      YEAR date_sub( @date ,INTERVAL 2 YEAR ) 2015-09-09 09:09:09
      SECOND_MICROSECOND 表达式,从秒到十分之1秒 date_sub( @date ,INTERVAL '2.2' SECOND_MICROSECOND ) 2017-09-09 09:09:06.980000
      MINUTE_MICROSECOND 表达式,从分钟到十分之一秒 date_sub( @date ,INTERVAL '2:2.2' MINUTE_MICROSECOND ) 2017-09-09 09:07:06.800000
      MINUTE_SECOND 表达式,从分钟到秒 date_sub( @date ,INTERVAL '2:2' MINUTE_SECOND ) 2017-09-09 09:07:07
      HOUR_MICROSECOND 表达式,从小时到十分之一秒 date_sub( @date ,INTERVAL '2:2:2.2' HOUR_MICROSECOND ) 2017-09-09 07:07:06.800000
      HOUR_SECOND 表达式,小时到秒 date_sub( @date ,INTERVAL  '2:2:2'  HOUR_SECOND ) 2017-09-09 07:07:07
      HOUR_MINUTE 表达式,小时到分钟 date_sub( @date ,INTERVAL '2:2'  HOUR_MINUTE ) 2017-09-09 07:07:09
      DAY_MICROSECOND 表达式,天到十分之一秒, date_sub( @date ,INTERVAL '2 2:2:2.2' DAY_MICROSECOND ) 2017-09-07 07:07:06.800000
      DAY_SECOND 表达式,天到秒, date_sub( @date ,INTERVAL  '2 2:2:2'  DAY_SECOND ) 2017-09-07 07:07:07
      DAY_MINUTE 表达式,天到分钟, date_sub( @date ,INTERVAL '2 2:2 ' DAY_MINUTE ) 2017-09-07 07:07:09
      DAY_HOUR 表达式,天到小时, date_sub( @date ,INTERVAL '2 2'  DAY_HOUR ) 2017-09-07 07:09:09
      YEAR_MONTH 表达式,年到月, date_sub( @date ,INTERVAL '2 2' YEAR_MONTH ) 2015-07-09 09:09:09
  • DATE_ADD(date,INTERVAL type d'expression)

    • La date est ajoutée à l'intervalle de temps spécifié et la méthode d'utilisation est la même que date_sub

  • adddate (date, type expr INTERVAL)

    • La date est augmentée de n jours

    • La date est augmenté de l'intervalle de temps spécifié, en utilisant la même méthode que DATE_ADD

    • adddate(date,INTERVAL expr type)

    • adddate(date, n )

  • timestampadd(intervalle, nombre, horodatage)

    • Année

    • trimestre

    • Mois

    • Jour

    • Semaine

    • Heure

    • minute

    • seconde

    • milliseconde

    • Fonction d'augmentation du temps

3 Fonction de conversion de l'heure

  • makedate(année, jour_de_année), maketime(heure,minute,seconde)

    • makedate Convertir en date
    maketime est converti en heure en fonction des heures, des minutes et des secondes
    • date(datetime), timestamp(date [,time])
    • Le le premier convertit le format date-heure en format date (contenant uniquement l'année, le mois et le jour), et le second convertit la date en format date-heure
  • convert_tz(datetime, from_tz, to_tz)

    • Selon l'heure du fuseau horaire A, quelle est l'heure renvoyée dans le fuseau horaire B
  • date_format(datetime,format), str_to_date(string,format)

    • Le premier convertit la date et l'heure en texte dans le format spécifié, et le second convertit le texte pour formater la date et l'heure
  • Exemple

  • Application pratique
    • SELECT NOW(),DATE_FORMAT(NOW(),' %Y-%m-%d') '%Y-%m-%d';
    • Année

    • Mois

    • Jour
    • Module horaire
    • heures
    • minutes
    • Secondes
    • Semaine
    • %X années, où dimanche est le premier jour de la semaine, 4 chiffres, utilisez
    • %x année avec %V, où lundi est le premier jour de la semaine, 4 chiffres, utilisez

    • %Y année, 4 chiffres
    • %y année, 2 chiffres

    • %b Nom du mois abrégé
    • %c Mois, valeur
    • %M Nom du mois
    • %m Mois, valeur (00-12)

    • %D Mois avec préfixe anglais Day
    • %d Jour du mois, valeur (00- 31)
    • %e Jour du mois, valeur (0-31)
    • %j Jour de l'année (001-366)

    • Heure %T, 24 heures (hh:mm:ss)
    • %r Heure, 12 heures (hh:mm:ss AM ou PM)

    • %H heures (00-23)

    • %k heures (0-23)

    • %h heures ( 01-12)

    • %I heure (01-12) #%h n'est pas différent de %I (i majuscule)

    • % l Heures (1-12) Minuscule L

    • %p AM ou PM

    • %i Minutes, valeur (00-59)

    • %S secondes (00-59)

    • %s secondes (00-59)

    • %f Micro Secondes

    • %a Nom de la semaine abrégé

    • %W Nom de la semaine, nom complet en anglais samedi

    • % w Jour de la semaine (0=dimanche, 6=samedi, 0-6)

    • %U Semaine (00-52) Le dimanche est le premier jour de la semaine

    • %u Semaine (00-52) Lundi est le premier jour de la semaine

    • %V Semaine (01-53) Dimanche est le premier jour de la semaine, à utiliser avec %X

    • %v Semaine (01-53) Le lundi est le premier jour de la semaine, à utiliser avec %x

    • Convertissez la chaîne au format de date. Les caractères de la chaîne correspondant à l'année, au mois, au jour et à l'heure correspondent au format

    • Conversion de fuseau horaire

    • datetime est le fuseau horaire de from_zt et renvoie l'heure dans le fuseau horaire to_tz

    • Horodatage de conversion

    • Conversion du format date/heure Pour le format date

    • makedate Convertir en date

      basé sur l'année et le jour de l'année
    • maketime Convertir l'heure en heure en fonction des heures minutes secondes

    • Convertir l'heure en horodatage

    • Convertir l'horodatage en heure

    • from_unixtime

    • unix_timestamp

    • makedate (année, jour_de_année), maketime(heure, minute, seconde)

    • date(datetime)

    • horodatage(date), horodatage(date,heure)

    • convert_tz(datetime,from_tz,to_tz)

    • str_to_date(string,format)

    • date_format

4 Obtenez quelques fonctions

  • Obtenez les jours

    • to_days (datetime), dayofyear(datetime), dayofmonth(datetime)

    • aujourd'hui Retour de '0000-00 -00' Combien de jours se sont écoulés entre datetime

    • dayofyear, renvoie datetime quel jour est le jour du année

    • jourdumois, renvoie dateheure quel jour du mois ce jour est

  • Conversion en secondes

    • time_to_sec(time), sec_to_time(number)

    • Le premier est converti en secondes en fonction du temps, et le second est converti en temps en fonction des secondes

    •  

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn