Я хочу написать один оператор SQL Postgres, который говорит, что пользователь ищет цвет с X и яркостью Y. Если этот пользователь существует, верните все данные его строки. Если нет, создайте новую строку и передайте дополнительную информацию. Две отдельные заявления будут делать что-то вроде этого:Создать Postgres Получить или создать SQL-запрос
Select (color, brightness, size, age) FROM mytable WHERE color = 'X' AND brightness= 'Y';
Если ничего не возвращает, а затем выполнить следующее:
INSERT INTO mytable (color, brightness, size, age) VALUES (X, Y, big, old);
Есть ли способ, чтобы объединить их в одном запросе ??
В связи с расширением предложения 'RETURNING' postgresql на операторах INSERT я изначально надеялся, что можно комбинировать вставку с выбором в одном выражении с помощью объединения, но я попробовал, и, к сожалению, чтение и запись на самом деле невозможно смешивать сюда. – didierc