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