PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Type de colonne AAAA-MM dans PostgreSQL

Je suggérerais de ne pas trop réfléchir au problème et d'utiliser simplement la première date/heure du mois. Postgres a beaucoup de fonctions spécifiques à la date - de date_trunc() à age() à + interval -- pour prendre en charge les dates.

Vous pouvez facilement les convertir au format souhaité, obtenir la différence entre deux valeurs, etc.

Si vous formulez votre requête comme :

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

Ensuite, il peut facilement tirer parti d'un index sur (user_id, year_month) ou (year_month, user_id) .