Tutoriel classi...login
Tutoriel classique SQLite
auteur:php.cn  temps de mise à jour:2022-04-13 17:05:02

Date et heure SQLite


SQLite prend en charge les cinq fonctions de date et d'heure suivantes :

序号函数实例
1date(timestring, modifier, modifier, ...)以 YYYY-MM-DD 格式返回日期。
2time(timestring, modifier, modifier, ...)以 HH:MM:SS 格式返回时间。
3datetime(timestring, modifier, modifier, ...)以 YYYY-MM-DD HH:MM:SS 格式返回。
4julianday(timestring, modifier, modifier, ...)这将返回从格林尼治时间的公元前 4714 年 11 月 24 日正午算起的天数。
5strftime(format, timestring, modifier, modifier, ...)这将根据第一个参数指定的格式字符串返回格式化的日期。具体格式见下边讲解。

Les cinq fonctions de date et d'heure ci-dessus prennent une chaîne d'heure comme paramètre. Une chaîne de temps suivie de zéro ou plusieurs modificateurs modificateurs. La fonction strftime() peut également prendre le format de chaîne de format comme premier argument. Les différents types de chaînes temporelles et de modificateurs vous seront expliqués en détail ci-dessous.

Chaîne de temps

Une chaîne de temps peut être dans l'un des formats suivants :

序号时间字符串实例
1YYYY-MM-DD2010-12-30
2YYYY-MM-DD HH:MM2010-12-30 12:10
3YYYY-MM-DD HH:MM:SS.SSS2010-12-30 12:10:04.100
4MM-DD-YYYY HH:MM30-12-2010 12:10
5HH:MM12:10
6YYYY-MM-DDTHH:MM2010-12-30 12:10
7HH:MM:SS12:10:01
8YYYYMMDD HHMMSS20101230 121001
9now2013-05-07

Vous pouvez utiliser « T » comme caractère littéral pour séparer la date et l'heure.

Modificateur

La chaîne d'heure peut être suivie de zéro ou plusieurs modificateurs, qui modifieront la date et/ou l'heure renvoyée par les cinq fonctions ci-dessus. L’une des cinq fonctions ci-dessus renvoie l’heure. Les modificateurs doivent être utilisés de gauche à droite, et les modificateurs pouvant être utilisés dans SQLite sont répertoriés ci-dessous :

  • NNN jours

  • NNN heures

  • NNN minutes

  • NNN.NNNN secondes

  • NNN mois

  • Années NNN

  • début du mois

  • début de l'année

  • début de journée

  • jour de la semaine N

  • unixepoch

  • heure locale

  • utc

Formatage

SQLite fournit une fonction très pratique strftime() pour formater n'importe quelle date et heure. Vous pouvez formater la date et l'heure en utilisant les substitutions suivantes :

替换描述
%d一月中的第几天,01-31
%f带小数部分的秒,SS.SSS
%H小时,00-23
%j一年中的第几天,001-366
%J儒略日数,DDDD.DDDD
%m月,00-12
%M分,00-59
%s从 1970-01-01 算起的秒数
%S秒,00-59
%w一周中的第几天,0-6 (0 is Sunday)
%W一年中的第几周,01-53
%Y年,YYYY
%%% symbol

Instance

Essayons maintenant une autre instance à l'aide de l'invite SQLite. Ce qui suit est pour calculer la date actuelle :


sqlite> SELECT date('now');
2013-05-07

Ce qui suit est pour calculer le dernier jour du mois en cours :

sqlite> SELECT date('now','start of month','+1 month','-1 day');
2013-05-31

Ce qui suit est pour calculer la somme des dates étant donné l'horodatage UNIX 1092941466 Heure :

sqlite> SELECT datetime(1092941466, 'unixepoch');
2004-08-19 18:51:06

Voici comment calculer la date et l'heure par rapport au fuseau horaire local pour un horodatage UNIX donné 1092941466 :

sqlite> SELECT datetime(1092941466, 'unixepoch', 'localtime');
2004-08-19 11:51:06

Voici comment calculer le horodatage UNIX actuel :

sqlite> SELECT datetime(1092941466, 'unixepoch', 'localtime');
1367926057

Ci-dessous Calculez le nombre de jours depuis la signature de la Déclaration d'indépendance des États-Unis :

sqlite> SELECT julianday('now') - julianday('1776-07-04');
86504.4775830326

Ce qui suit est le calcul du nombre de secondes depuis un moment spécifique en 2004 :

sqlite> SELECT strftime('%s','now') - strftime('%s','2004-01-01 02:34:56');
295001572

Ce qui suit est le calcul du premier mois d'octobre de cette année-là, la date du mardi :

sqlite> SELECT date('now','start of year','+9 months','weekday 2');
2013-10-01

Ce qui suit est le temps en secondes depuis l'époque UNIX (similaire à strftime(' %s','now'), sauf que la partie décimale est incluse) :

sqlite> SELECT (julianday('now') - 2440587.5)*86400.0;
1367926077.12598

Convertit entre les valeurs UTC et l'heure locale Lors du formatage des dates, utilisez le modificateur utc ou localtime, comme ceci :

sqlite> SELECT time('12:00', 'localtime');
05:00:00
rrree

Site Web PHP chinois