PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Calcular DATEDIFF em POSTGRES usando SQLAlchemy


O PostgreSQL não tem um datediff função . Para obter o número de minutos, use a expressão SQL :
trunc((extract(epoch FROM newer_date) - extract(epoch FROM older_date)) / 60)
  • extract(epoch FROM …) converte o carimbo de data/hora em número de segundos.
  • / 60 converte de segundos para minutos
  • trunc(…) remove a parte fracionária.

Então provavelmente tente
sa.func.trunc((
    sa.extract('epoch', datetime.utcnow()) -
    sa.extract('epoch', datetime.utcnow())
) / 60)