Как правильно составить запрос с условием в Postgresql

Есть апи, по которой передаю данные JSON в бд, мне необходимо изменить данные в таблице user_date при запросе, если поле amount < price. Подскажите как правильно реализовать такой запрос?

Вот мой вариант, но он совсем не удачный:

`SELECT *
        CASE
        WHEN amount > price THEN UPDATE user_data SET amount - ABS($4), service_id = $2, order_id = $3, price = $4, WHERE id = $1
            ELSE amount END
        FROM user_data
        `

Ответы (1 шт):

Автор решения: Victor

Решил проблему так:

UPDATE user_data
            SET amount = case when amount - ABS($4) >= 0 then amount - ABS($4) else amount end,
                service_id = $2,
                order_id = $3,
                price = $4
            WHERE id = $1;
→ Ссылка