Compartilhar via


Função date_trunc

Aplica-se a: marca de seleção positiva SQL do Databricks marca de seleção positiva Runtime do Databricks

Retorna o carimbo de data/hora truncado para a unidade especificada em unit.

Sintaxe

date_trunc(unit, expr)

Argumentos

  • unit: Um STRING literal.
  • expr: A DATE, TIMESTAMP, or STRING com um formato de carimbo de data/hora válido.

Devoluções

Um TIMESTAMP.

Observações

As unidades válidas para unit (não diferencia maiúsculas de minúsculas):

  • 'YEAR', 'YYYY', 'YY': truncar para a primeira data do ano em que o expr cai, a parte de hora será zerada
  • 'QUARTER': truncar para a primeira data do ano em que o expr cai, a parte de hora será zerada
  • 'MONTH', 'MM', 'MON' : truncar para a primeira data do ano em que o expr cai, a parte de hora será zerada
  • 'WEEK': truncar para a segunda-feira da semana em que o expr cai, a parte de hora será zerada
  • 'DAY', 'DD': zerar a parte de tempo
  • 'HOUR': zero minuto e segundo com parte fracionária
  • 'MINUTE': zero no segundo com parte fracionária
  • 'SECOND': zero da segunda parte fracionária
  • 'MILLISECOND': zero em microssegundos
  • 'MICROSECOND': tudo permanece

Se unit não estiver bem formado, a função retornará NULL.

Exemplos

> SELECT date_trunc('YEAR', '2015-03-05T09:32:05.359');
 2015-01-01 00:00:00

> SELECT date_trunc('MM', '2015-03-05T09:32:05.359');
 2015-03-01 00:00:00

> SELECT date_trunc('DD', '2015-03-05T09:32:05.359');
 2015-03-05 00:00:00

> SELECT date_trunc('HOUR', '2015-03-05T09:32:05.359');
 2015-03-05 09:00:00

> SELECT date_trunc('MILLISECOND', '2015-03-05T09:32:05.123456');
 2015-03-05 09:32:05.123

-- Not a recognised unit
> SELECT date_trunc('MS', '2015-03-05T09:32:05.123456');
 NULL