SQLite
 sql >> Base de Dados >  >> RDS >> SQLite

Modificadores válidos para funções de data/hora do SQLite


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