Abaixo está uma lista de modificadores válidos para funções de data e hora no SQLite.
Modificador | Exemplo |
---|---|
NNN dias | data('agora', '+3 dias') |
NNN horas | datetime('agora', '-3 horas') |
NNN minutos | datetime('agora', '+3 minutos') |
NNN.NNNN segundos | datetime('agora', '-30 segundos') |
NNN meses | data('agora', '+3 meses') |
NNN anos | data('agora', '-3 anos') |
início do mês | data('agora', 'início do mês') |
início do ano | data('agora', 'início do ano') |
início do dia | datetime('agora', 'início do dia') |
dia da semana N | data('agora', 'dia 6') |
unixepoch | datetime('1588965525', 'unixepoch') |
hora local | datahora('agora', 'hora local') |
utt | datahora('agora', 'utc') |
Como esses modificadores funcionam?
Ao usar uma das funções de data/hora no SQLite, você tem a opção de usar modificadores para transformar a data fornecida à função.
Por exemplo, você pode usar um modificador para adicionar um número de dias, horas ou até minutos a uma determinada data. Ou você pode usar um modificador para especificar UTC ou hora local, etc.
Exemplo
Aqui está um exemplo rápido para mostrar a saída do uso dos modificadores acima.
.mode line
SELECT
datetime('now'),
date('now', '+3 days'),
datetime('now', '+3 hours'),
datetime('now', '+3 minutes'),
datetime('now', '+30 seconds'),
date('now', '+3 months'),
date('now', '-3 years'),
date('now', 'start of month'),
date('now', 'start of year'),
datetime('now', 'start of day'),
date('now', 'weekday 6'),
datetime('1588965525', 'unixepoch'),
datetime('now', 'localtime'),
datetime('now', 'utc');
Resultado:
datetime('now') = 2020-04-26 00:53:53 date('now', '+3 days') = 2020-04-29 datetime('now', '+3 hours') = 2020-04-26 03:53:53 datetime('now', '+3 minutes') = 2020-04-26 00:56:53 datetime('now', '+30 seconds') = 2020-04-26 00:54:23 date('now', '+3 months') = 2020-07-26 date('now', '-3 years') = 2017-04-26 date('now', 'start of month') = 2020-04-01 date('now', 'start of year') = 2020-01-01 datetime('now', 'start of day') = 2020-04-26 00:00:00 date('now', 'weekday 6') = 2020-05-02 datetime('1588965525', 'unixepoch') = 2020-05-08 19:18:45 datetime('now', 'localtime') = 2020-04-26 10:53:53 datetime('now', 'utc') = 2020-04-25 14:53:53