sql >> Databasteknik >  >> RDS >> PostgreSQL

Återställer kolumnen för automatisk ökning till 0 dagligen

Det kan vara ganska trivialt med en cronjob

0 0 * * * echo "SELECT setval('public.my_table_id_seq', 1, false)" | psql -U my_db_user -d my_db_name

Alternativt kan du ställa in din "seriella" kolumn DEFAULT för att anropa en lagrad procedur, som skulle kontrollera om det finns en dagsövergång, återställa sekvensen om så är lämpligt och sedan returnera resultatet av nextval().

Men förutom det, nej, jag skulle inte förvänta mig att det finns en magisk ALTER SEQUENCE my_seq RESET AT INERVAL "1 day" eller något liknande.

Edit:inkorporerade duckyfuzz kommentar.



  1. Beräkna öppettider mellan två datum

  2. Extrahera specifika ord från textfält i mysql

  3. Hur REPEAT() fungerar i MariaDB

  4. ORA-00904 Invalid identifier” för en identifierare i en group by-sats