sql >> Databasteknik >  >> RDS >> PostgreSQL

ÅÅÅÅ-MM kolumntyp i PostgreSQL

Jag skulle föreslå att du inte tänker för mycket på problemet och bara använder det första datumet/tiden i månaden. Postgres har massor av datumspecifika funktioner -- från date_trunc() till age() till + interval -- för att stödja datum.

Du kan enkelt konvertera dem till det format du vill ha, få skillnaden mellan två värden och så vidare.

Om du formulerar din fråga som:

where year_month = date_trunc('month', now()) and user_id = 'adc1-23...'

Då kan den enkelt dra nytta av ett index på (user_id, year_month) eller (year_month, user_id) .



  1. återanvända resultatet av ett urvalsuttryck i GROUP BY-satsen?

  2. Lagra en fil i en databas i motsats till filsystemet?

  3. MySQL AUTO_INCREMENT rullar inte tillbaka

  4. Introduktion till Firebase