SQL выберите и измените таблицу в одном операторе
У меня есть таблица, в которой я хотел бы выбрать определенные столбцы, а затем создать преобразованные столбцы на основе этого выбора. По соображениям безопасности я не могу создать новую таблицу и подумал, что может быть способ SELECT и ALTER в том же операторе.
Мое заявление ниже выполняется, но столбец не создается. Я что-то делаю не так / такой подход невозможен? Есть ли лучший подход?
SELECT * col1,col2,col3 FROM db
AS db2
ALTER TABLE db2 ADD col4 AS (transformation) PERSISTED
Руководство и рекомендации приветствуются.
1 ответ
Вероятно, вам нужно просто выполнить запрос или, если вы хотите часто запрашивать данные, просматривать в базе данных.
На сервере SQL и, скорее всего, в других вариантах SQL вы можете создать представление с помощью следующего оператора (db будет именем таблицы, именем представления db2):
create view db2 as
select col1, col2, col3, (transformation) as col4
from db
Обычно вам нужно предоставить ему некоторые разрешения, если только вы не являетесь его единственным пользователем.
Создание представления - это разовая задача, после чего вы можете запросить данные следующим образом:
select col1, col2, col3, col4
from db2
where ...