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

postgres sql , come incrementare quando esiste null

Puoi farlo con l'aiuto di coalesce funzione:

INSERT INTO mytable (id,inc) VALUES ('a',1)
ON CONFLICT (id)
DO UPDATE SET inc = coalesce(mytable.inc,0) + 1;

Il punto chiave è l'espressione coalesce(mytable.inc,0) , che significa quanto segue:if mytable.inc non è NULL quindi usa quel valore, altrimenti usa il valore 0 .