sql >> Database teknologi >  >> RDS >> PostgreSQL

Ecto-forespørgsel - Datoer + Postgres-intervaller + Forespørgselsinterpolation

Jeg var nødt til at gøre præcis dette for et stykke tid siden og endte med at bruge det faktum, at du kan gange intervaller med $1 .

postgres=# select interval '1 year' - interval '1 month' * 5;
 ?column?
----------
 7 mons
(1 row)

Så dette burde virke:

query = from ch in Child, 
            join: loc in assoc(ch, :location),
            where: ch.birthday <= fragment("(now() AT TIME ZONE ?)::date - interval '1 month' * ?", loc.time_zone, 2)

Repo.all(query)



  1. PHP - MySQL-forespørgsel med sideinddeling

  2. Indlejrede kommentarer i PHP og MySQL

  3. Sådan ændres autonummererings-id-feltet til seriel type i PostgreSQL

  4. Boolesk feltforespørgsel med sqlalchemy