У меня возникла проблема с некоторыми DB2 SQL, и я действительно мог бы использовать некоторую помощь.
Короче говоря, люди хотят, чтобы я создал представление. Я написал запрос, который работает и возвращает то, что мы хотели ... но когда я обертываю его оператором CREATE VIEW, представление выдает ошибки, когда я запрашиваю его с чем-либо.
Запрос (имена изменены явно):
SELECT DISTINCT "QTable"."Add" "Q_Add", "QTable"."Approved" "Q_Approved", "QTable"."Link" "Q_Link"
FROM ((
SELECT * FROM db.schema.VTable)
"QTable" LEFT OUTER JOIN (SELECT * FROM db.schema.ETable)
"QStat" on "QTable"."Status" = "QStat"."ETable")
Каждый раз, когда я запускаю это, я получаю 10 записей назад. Круто, вот чего я хочу. Когда я обертываю это как представление, которое я делаю, введя:
CREATE VIEW TestSchema.TestTable AS
SELECT * FROM ( *query I just wrote above*)
Он запускается (очень быстро), но затем я запускаю базовый SELECT * FROM viewname
Я всегда получаю ту же ошибку:
SQL0206N "QTable.Status" is not valid in the context where it is used. SQLSTATE=42703
Я застрял на некоторое время. Я предполагаю, что я создаю неправильное представление. Есть идеи? Советы?
Редактировать: DB2 11.1