Mam tabelę PostgreSQL 8.4 z automatycznie zwiększającą się, ale zerową kolumną całkowitą. Chcę zaktualizować niektóre wartości kolumn, a jeśli ta kolumna ma wartość NULL, ustaw ją na wartość domyślną (która byłaby liczbą całkowitą wygenerowaną automatycznie z sekwencji), , ale Chcę zwrócić wartość w obu przypadkach. Więc chcę coś takiego:Warunkowo ustaw kolumnę na wartość domyślną w Postgresie
UPDATE mytable
SET incident_id = COALESCE(incident_id, DEFAULT), other = 'somethingelse'
WHERE ...
RETURNING incident_id
Niestety, to nie działa - wydaje się, że DEFAULT
jest wyjątkowy i nie mogą być częścią wypowiedzi. Jaki jest najlepszy sposób na zrobienie tego?
Wygląda na to, że przeciążasz cel kolumny incident_id i umieszczasz tutaj pewną logikę biznesową. POCAŁUNEK. – Timothy
Kandydat na żądanie funkcji? – adjenks