English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
SQLite prend en charge les cinq fonctions de date et d'heure suivantes :
Numéro | Fonction | Exemple |
---|---|---|
1 | date(timestring, modifier, modifier, ...) | Avec YYYY-MM-Retourne la date au format DD. |
2 | time(timestring, modifier, modifier, ...) | Retourne l'heure au format HH:MM:SS. |
3 | datetime(timestring, modifier, modifier, ...) | Avec YYYY-MM-Format DD HH:MM:SS |
4 | julianday(timestring, modifier, modifier, ...) | Cela renverra le nombre de jours écoulés depuis le début du temps grégorien de Greenwich avant Jésus-Christ 4714 Année 11 Mois 24 Nombre de jours depuis midi du jour |
5 | strftime(format, timestring, modifier, modifier, ...) | Cela renverra la date formatée en fonction de la chaîne de caractères de format spécifiée au premier paramètre. Voir les détails ci-dessous. |
Les cinq fonctions de date et d'heure ci-dessus prennent la chaîne de caractères de l'heure comme paramètre. La chaîne de caractères de l'heure peut être suivie de zéro ou plusieurs modificateurs. La fonction strftime() peut également prendre la chaîne de caractères de format en tant que premier paramètre. Nous allons vous expliquer en détail différents types de chaînes de caractères de l'heure et de modificateurs.
Une chaîne de caractères de l'heure peut être au format suivant :
Numéro | Chaîne de caractères de l'heure | Exemple |
---|---|---|
1 | YYYY-MM-DD | 2010-12-30 |
2 | YYYY-MM-DD HH:MM | 2010-12-30 12:10 |
3 | YYYY-MM-DD HH:MM:SS.SSS | 2010-12-30 12:10:04.100 |
4 | MM-DD-YYYY HH:MM | 30-12-2010 12:10 |
5 | HH:MM | 12:10 |
6 | YYYY-MM-DDTHH:MM | 2010-12-30 12:10 |
7 | HH:MM:SS | 12:10:01 |
8 | YYYYMMDD HHMMSS | 20101230 121001 |
9 | now | 2013-05-07 |
Vous pouvez utiliser "T" comme caractères de séparation entre la date et l'heure.
La chaîne de caractères de l'heure peut être suivie de zéro ou plusieurs modificateurs, ce qui modifie la date et l'heure renvoyées par les cinq fonctions ci-dessus./ou l'heure. Toute la fonction des cinq grandes fonctions ci-dessus renvoie l'heure. Les modificateurs doivent être utilisés de gauche à droite, voici une liste des modificateurs disponibles dans SQLite :
NNN jours
NNN heures
NNN minutes
NNN.NNNN secondes
NNN mois
NNN années
start of month
start of year
start of day
weekday N
unixepoch
localtime
utc
SQLite fournit des fonctions très pratiques strftime() Pour formater n'importe quelle date et heure. Vous pouvez utiliser les remplacements suivants pour formater la date et l'heure :
Remplacement | Description |
---|---|
%d | Jour du mois, 01-31 |
%f | Secondes avec partie décimale, SS.SSS |
%H | Heure, 00-23 |
%j | Jour de l'année, 001-366 |
%J | Nombre de jours juliens, DDDD.DDDD |
%m | Mois, 00-12 |
%M | Minute, 00-59 |
%s | de 1970-01-01 Secondes écoulées depuis |
%S | Seconde, 00-59 |
%w | Jour de la semaine, 0-6 (0 est dimanche) |
%W | Semaine de l'année, 01-53 |
%Y | Année, YYYY |
%% | Symbole % |
Maintenant, utilisons l'invite SQLite pour essayer divers exemples. Les commandes suivantes calculent la date actuelle.
sqlite> SELECT date('now'); 2013-05-07
Les commandes suivantes calculent le dernier jour du mois en cours.
sqlite> SELECT date('now','start of month','+1 month','-1 day'); 2013-05-31
Les commandes suivantes calculent la date et l'heure d'un timestamp UNIX donné1092941466de la date et de l'heure.
sqlite> SELECT datetime(1092941466, 'unixepoch'); 2004-08-19 18:51:06
Les commandes suivantes calculent la date et l'heure d'un timestamp UNIX donné1092941466de la date et de l'heure, et compensez votre fuseau horaire local.
sqlite> SELECT datetime(1092941466, 'unixepoch', 'localtime'); 2004-08-19 13:51:06
Les commandes suivantes calculent le timestamp UNIX actuel.
sqlite> SELECT strftime('%s','now'); 1393348134
Les commandes suivantes calculent le nombre de jours écoulés depuis la signature de la Déclaration d'indépendance des États-Unis.
sqlite> SELECT julianday('now') - julianday('1776-07-04); 86798.7094695023
Les commandes suivantes calculent depuis2004secondes écoulées depuis un moment spécifique de l'année.
sqlite> SELECT strftime('%s','now') - strftime('%s','2004-01-01 02:34:56); 295001572
Les commandes suivantes calculent l'année en cours10La date du premier mardi du mois.
sqlite> SELECT date('now','start of year','+9 months','weekday 2); 2013-10-01
Les commandes suivantes calculent le temps écoulé depuis l'époque UNIX en secondes (similaires à strftime('%s', 'now'), mais incluent les parties décimales).
sqlite> SELECT (julianday('now') - 2440587.5)*86400.0; 1367926077.12598
Pour convertir les valeurs de temps UTC et locale au formatage de date, utilisez les modificateurs utc ou localtime, comme indiqué ci-dessous :
sqlite> SELECT time('12:00', 'localtime'); 05:00:00
sqlite> SELECT time('12:00', 'utc'); 19:00:00