Maison > base de données > tutoriel mysql > le corps du texte

date et heure mysql

韦小宝
Libérer: 2017-12-04 09:36:51
original
1916 Les gens l'ont consulté

Au début, il y aura certainement beaucoup d'étudiants qui ne comprendront pas l'heure d'acquisition de mysql Aujourd'hui, nous allons parler en détail de l'heure et de la date de mysql. Pour mysqlLes étudiants qui ne connaissent pas l'heure et la date peuvent en savoir plus~

1 Obtenir la date et l'heure

<.>

1,1 Obtenez la date et l'heure locales actuelles

SELECT 
    NOW(), 
    CURRENT_TIMESTAMP(), 
    LOCALTIME(), 
    LOCALTIMESTAMP(),
    SYSDATE();
Copier après la connexion

Les 5 fonctions ci-dessus peuvent toutes obtenir l'heure locale actuelle , mais SYSDATE est différent.

SELECT NOW(), SLEEP(3), NOW();
Copier après la connexion
Résultat de l'exécution :

NOW()                  sleep(3)     NOW()
2017-11-09 17:21:09    0            2017-11-09 17:21:09
Copier après la connexion
Bien qu'il ait dormi pendant 3 secondes, le temps obtenu avant et après NOW() est le même, ce qui signifie que le temps obtenu par NOW () est la même L'heure est l'heure à laquelle toute l'instruction SQL commence à être exécutée. Quel que soit le nombre de fonctions NOW() qu'il y a dans l'instruction SQL, l'heure obtenue est la même.

Les fonctions CURRENT_TIMESTAMP(), LOCALTIME(), LOCALTIMESTAMP() et NOW() sont les mêmes.

Mais SYSDATE est différent. Il obtient l'heure en temps réel lorsque la fonction SYSDATE() est exécutée :

SELECT SYSDATE(), SLEEP(3), SYSDATE();
Copier après la connexion
Résultat de l'exécution :

SYSDATE()            sleep(3)   SYSDATE()
2017-11-09 17:25:05  0          2017-11-09 17:25:08
Copier après la connexion

1.2, Obtenez la date locale actuelle

SELECT 
    CURDATE(), 
    CURRENT_DATE();
Copier après la connexion

1.3, Obtenez l'heure locale actuelle

SELECT 
    CURTIME(), 
    CURRENT_TIME();
Copier après la connexion

1.4, Obtenez l'heure locale actuelle Date et heure UTC

SELECT 
    UTC_TIMESTAMP();
Copier après la connexion

1.5, obtenez la date UTC actuelle

SELECT 
    UTC_DATE();
Copier après la connexion

1.6, obtenez l'heure UTC actuelle

SELECT 
    UTC_TIME();
Copier après la connexion

1.7. Obtenir horodatage (secondes écoulées depuis 1970)

SELECT UNIX_TIMESTAMP();  -- 当前时间时间戳
SELECT UNIX_TIMESTAMP(&#39;2017-11-09 12:30:00&#39;);  -- 自1970年到2017-11-09 12:30:00经过的秒数
Copier après la connexion

2. Heure opération


2.1. Extraire l'heure et la date de

String

SET @dt = &#39;2008-09-10 07:15:30.123456&#39;;
SELECT DATE(@dt);        -- 2008-09-10
SELECT TIME(@dt);        -- 07:15:30.123456
SELECT YEAR(@dt);        -- 2008
SELECT QUARTER(@dt);     -- 3
SELECT MONTH(@dt);       -- 9
SELECT WEEK(@dt);        -- 36
SELECT DAY(@dt);         -- 10
SELECT HOUR(@dt);        -- 7
SELECT MINUTE(@dt);      -- 15
SELECT SECOND(@dt);      -- 30
SELECT MICROSECOND(@dt); -- 123456
Copier après la connexion

2.2. Obtenez la position d'un certain jour dans une semaine, un mois ou une année

SET @dt = &#39;2017-11-09&#39;;
SELECT DAYOFWEEK(@dt);   -- 5       星期日为0,5代表星期四
SELECT DAYOFMONTH(@dt);  -- 9       一个月的第9天
SELECT DAYOFYEAR(@dt);   -- 313     2017年的第313天
Copier après la connexion

2.3 Obtenez le dernier jour de la date spécifiée

<. 🎜>
SELECT LAST_DAY(&#39;2017-02-05&#39;);   -- 2017-02-28
Copier après la connexion
2.4. Ajouter et soustraire du temps

SET @dt = "2017-11-09 17:10:20.0000001";
SELECT DATE_ADD(@dt, INTERVAL 1 DAY);        -- 加1天
SELECT DATE_ADD(@dt, INTERVAL 2 HOUR);       -- 加2小时
SELECT DATE_ADD(@dt, INTERVAL 1 MINUTE);     -- 加1分钟
SELECT DATE_ADD(@dt, INTERVAL 1 SECOND);
SELECT DATE_ADD(@dt, INTERVAL 1 MICROSECOND); -- 加1微妙
SELECT DATE_ADD(@dt, INTERVAL 1 WEEK);        -- 加1周
SELECT DATE_ADD(@dt, INTERVAL 1 MONTH);
SELECT DATE_ADD(@dt, INTERVAL 1 QUARTER);     -- 加1个季度
SELECT DATE_ADD(@dt, INTERVAL 1 YEAR);
SELECT DATE_ADD(@dt, INTERVAL -1 DAY);       -- 减1天
Copier après la connexion
2.5. Ajouter et soustraire deux dates et heures

SELECT DATEDIFF(&#39;2008-08-08&#39;, &#39;2008-08-01&#39;);  -- 7
SELECT DATEDIFF(&#39;2008-08-01&#39;, &#39;2008-08-08&#39;);  -- -7  第一个参数减去第二个参数
Copier après la connexion
.
SELECT TIMEDIFF(&#39;2008-08-08 08:08:08&#39;, &#39;2008-08-08 00:00:00&#39;);  -- 08:08:08
SELECT TIMEDIFF(&#39;00:00:00&#39;, &#39;08:08:08&#39;);                        -- -08:08:08
Copier après la connexion
2.6. Formatage de l'heure

SELECT DATE_FORMAT(&#39;2008-08-08 22:23:00&#39;, &#39;%W %M %Y&#39;);      -- Friday August 2008
SELECT DATE_FORMAT(&#39;2008-08-08 22:23:01&#39;, &#39;%Y%m%d%H%i%s&#39;);  -- 20080808222301
SELECT TIME_FORMAT(&#39;22:23:01&#39;, &#39;%H.%i.%s&#39;);                 -- 22.23.01
Copier après la connexion
2.7. Deuxième calcul

Ce qui précède est tout le contenu de la date et de l'heure MySQL. J'espère qu'il pourra être utilisé par les étudiants. Apportons une nouvelle compréhension et une nouvelle inspiration
计算指定时间折合多少秒,如00:01:00表示1分钟,等于60秒。
SELECT TIME_TO_SEC(&#39;01:00:05&#39;);  -- 3605
SELECT SEC_TO_TIME(3605);        -- &#39;01:00:05&#39;
Copier après la connexion

Recommandations associées :

MySQL. Tutoriel de base sur l'heure de requête

Méthodes et fonctions de requête d'heure et de date MySQL

La fonction d'heure MySQL utilise le code PHP pour la comparaison des différences de base de données MySQL

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal