sql >> Database >  >> RDS >> PostgreSQL

Ecto Query - Datums + Postgres-intervallen + Query-interpolatie

Ik moest dit een tijdje geleden precies doen en gebruikte uiteindelijk het feit dat je intervallen kunt vermenigvuldigen met $1 .

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

Dit zou dus moeten werken:

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. MySQL FULLTEXT werkt niet met meer dan één veld

  2. SQL Bereken het gemiddelde tijdsverschil tussen de totale rijen

  3. vergrendel tabel na BeginTransaction MySql-transactie in c#.net

  4. Probleem met toegang tot MySQL vanuit Java