Учитывая что-то вроде:
SELECT
a,
b,
fn(c),
fn2(a, d),
d
FROM table_name
...
возможно ли разделить эти поля во что-то, что можно повторно использовать в выражении RETURNING
, например:
INSERT INTO table_name
VALUES ...
RETURNING <here>
Что я пробовал
Я знаю, что оператор SELECT может быть вынесен в представление, но не похоже, что я смогу повторно использовать это представление в RETURNING
.
Вставка в представление теоретически возможна в некоторых случаях, но кажется невозможной, если у вас есть fn
и fn2
.
Фактический вариант использования
Я работаю с Dapper в .NET Core и пытаюсь вернуть определенное подмножество полей из таблицы, чтобы всегда возвращаться к одному и тому же объекту.
Я мог бы создать отдельную функцию в C #, которая создала бы SELECT
с этими конкретными полями и повторно использовать эту функцию вместо этого, но мне просто интересно, возможно ли это, просто используя SQL.