Latest web development tutorials

SQLite Data & Hora

SQLite suporta os seguintes cinco funções de data e hora:

Não. função Exemplos
1 data (timestring, modificador, modificador, ...) Retorna o formato de data e AAAA-MM-DD.
2 tempo (timestring, modificador, modificador, ...) Em HH: MM: SS tempo formato de retorno.
3 datetime (timestring, modificador, modificador, ...) No formato AAAA-MM-DD HH: MM: SS para retornar.
4 julianday (timestring, modificador, modificador, ...) Isso retorna o número de dias a partir do momento de 4714 aC Greenwich em 24 de novembro na contagem de meio-dia.
5 strftime (formato, timestring, modificador, modificador, ...) Isso retorna a data formatada de acordo com o primeiro parâmetro especifica a cadeia de formato. Veja abaixo explicam formato específico.

De data e hora cinco funções a corda de tempo como um parâmetro. corda de tempo seguido de zero ou mais modificadores modificadoras. função strftime () também pode formatar formato de cadeia como seu primeiro argumento. Abaixo você encontrará uma explicação detalhada dos diferentes tipos de cordas de tempo e modificadores.

corda de tempo

Uma cadeia de tempo pode ser qualquer um dos seguintes formatos:

序号时间字符串实例
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

Você pode usar o "T" que separa a data ea hora como caracteres de texto.

Modificadores (modificador)

corda de tempo pode ser seguido de volta a zero ou mais modificadores que irão mudar a data das cinco retornos de função e / ou tempo. Qualquer um dos cinco funções tempo de retorno. Da esquerda para a direita modificador deve ser utilizados modificadores são listadas abaixo pode ser utilizada na SQLite:

  • dias NNN

  • horas NNN

  • nnn minutos

  • segundos NNN.NNNN

  • meses NNN

  • anos NNN

  • início do mês

  • início do ano

  • início do dia

  • nos dias úteis N

  • unixepoch

  • localtime

  • UTC

formato

SQLite fornece umafunção strftime muito conveniente ()para formatar qualquer data e hora. Você pode usar o seguinte formato para substituir a data e hora:

替换描述
%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

Exemplos

Agora vamos usar SQLite prompt de tentar diferentes instâncias. O que se segue é um cálculo da data atual:

sqlite> SELECT DATE ( "agora");
2013/05/07

O que se segue é um cálculo do último dia do mês atual:

sqlite> SELECT DATE ( 'empresa', 'início do mês', '+ 1 mês', '- 1 dia);
2013/05/31

O que se segue é um cálculo de um determinado timestamp UNIX da data e hora 1092941466:

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

O que se segue é um cálculo de uma determinada data e hora UNIX timestamp 1092941466 fuso horário relativamente local:

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

O que se segue é um cálculo da corrente timestamp UNIX:

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

O que se segue é um cálculo do número de dias dos Estados Unidos "Declaração de Independência" desde a assinatura:

sqlite> julianday SELECIONAR ( "agora") - julianday ( '1776/07/04');
86.504,4775830326

O que se segue é calculado desde 2004, em um dado momento o número de segundos:

sqlite> strftime SELECIONAR ( '% s', 'agora') - strftime ( '% s', '2004-01-01 02:34:56');
295 001 572

O que se segue é um cálculo da primeira terça-feira de outubro de data daquele ano:

sqlite> SELECT DATE ( 'empresa', 'início do ano', '+ 9 meses "," segunda a sexta de 2');
2013/10/01

A seguir é calculada a partir da época UNIX em segundos o tempo de contagem (similar ao strftime ( '% s', 'empresa'), é que existem diferentes incluindo a parte fracionária):

sqlite> SELECIONAR (julianday ( "agora") - 2.440.587,5) * 86400,0;
1,367,926,077.12598

Em entre o UTC ea hora local, o valor da conversão, quando a formatação de data, UTC uso ou localtime modificador, como segue:

sqlite> o SELECT ('12: 00 ',' localtime ');
05:00:00
sqlite> o SELECT ('12: 00 ',' UTC ');
19:00:00