FC ConcursosFC Concursos

Questão FC369620

Considere a seguinte estrutura de dados criada em SGBD PostgreSQL com extensão espacial PostGIS: 1 create index taxi_idx 2 select distinct taxi, 3 extract(day from t) as dia, 4 max

Sistema de Gerenciamento de Banco de Dados (SGBD)

FGV · 2024

Considere a seguinte estrutura de dados criada em SGBD PostgreSQL com extensão espacial PostGIS:

 

1 create index taxi_idx


2 select distinct taxi,
3            extract(day from t) as dia,
4            max(t) over p as chegada,
5            min(t) over p as partida
6 from taxi
7 particao p as (partition by taxi, extract(day from
t))
8 select taxi,
9            t,
10           lead(t) over (partition by taxi order by
t) - t as time_gap,
11           st_distance(lead(geom) over (partition by
taxi order by t), geom) as space_gap,
12           geom
13 from taxi

 

De acordo com o código supracitado, o atributo time_gap é do tipo

  1. integer.
  2. interval.
  3. timestamp.
  4. real.
  5. time.
Mostrar resposta e comentário

Gabarito

B

Comentário do professor

Quando se calcula lead(t) over (...) - t, está-se subtraindo dois valores do tipo timestamp. Em PostgreSQL, a diferença entre dois timestamps resulta em um valor do tipo interval, que representa uma duração temporal.

Portanto, o atributo time_gap armazena um interval: a duração entre o instante atual e o próximo registro do mesmo táxi. Esse valor pode conter dias, horas, minutos, segundos e frações.

O interval permite comparações, adições a timestamps (por exemplo, \(t + time\_gap =\) timestamp seguinte) e extrações numéricas via extract, como extract(epoch from time_gap) para obter segundos.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo