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

Tipo di colonna AAAA-MM in PostgreSQL

Suggerirei di non pensare troppo al problema e di utilizzare semplicemente la prima data/ora del mese. Postgres ha molte funzioni specifiche per la data -- da date_trunc() a age() a + interval -- per supportare le date.

Puoi convertirli prontamente nel formato che desideri, ottenere la differenza tra due valori e così via.

Se esprimi la tua domanda come:

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

Quindi può facilmente sfruttare un indice su (user_id, year_month) o (year_month, user_id) .