У меня есть 3 таблицы и созданный вид для всех трех таблиц.SQL Server 2008 R2: изменить представление, удалив определенную таблицу
Таблица: s1
CREATE TABLE s1
(
Cola INT,
Colb VARCHAR(10)
);
Таблица: s2
CREATE TABLE s2
(
Cola INT,
Colb VARCHAR(10)
);
Таблица: s3
CREATE TABLE s3
(
Cola INT,
Colb VARCHAR(10)
);
Вставка:
INSERT INTO s1 VALUES(1,'a');
INSERT INTO s1 VALUES(1,'b');
INSERT INTO s2 VALUES(3,'c');
INSERT INTO s2 VALUES(4,'d');
INSERT INTO s3 VALUES(1,'a');
INSERT INTO s3 VALUES(1,'b');
Создание View: sx
CREATE VIEW sx as
SELECT * FROM s1
UNION ALL
SELECT * FROM s2
UNION ALL
SELECT * FROM s3;
Теперь у меня есть это:
SELECT * FROM Sx;
Результат:
-------------
cola colb
-------------
1 a
1 b
3 c
4 d
1 a
1 b
Примечание: Я хочу ALTER VIEW
, в котором я хочу, чтобы удалить эти таблицы, в которых cola
содержит значение 1
. И, по мне, таблицы s1
и s3
имеют эти значения.
Примечание 1: Если все таблицы содержит значение 1
VIEW
затем должен быть drop
.
Вопрос: Как изменить вид, проверив определенное состояние, как указано выше?