У меня запрос в структуре, аналогичной приведенной ниже
SELECT blah
FROM A, B, C
WHERE $SOME_COMMON_IF_AND
AND $SPECIFIC_1
UNION
SELECT blah
FROM A, B, C, D
WHERE $SOME_COMMON_IF_AND
AND $SPECIFIC_2
UNION
...
В попытке сократить время запроса я пытаюсь вырезать части $ SOME_COMMON_IF_AND и спроецировать его как представление, и чтобы предложения SELECT использовали это представление в качестве базового.
Я не могу понять правильный синтаксис для этого, какие-либо предложения?
Заранее спасибо!
--- РЕДАКТИРОВАНИЕ ДЛЯ ДОПОЛНИТЕЛЬНОЙ ИНФОРМАЦИИ ---
Например:
(SELECT blah
FROM A, B, C
WHERE $SOME_COMMON_IF_AND)
AS WORK_TABLE_1
%$@#%$@# -- the missing link
SELECT blah
FROM WORK_TABLE_1
WHERE $SPECIFIC_1
UNION
SELECT blah
FROM WORK_TABLE_1
WHERE $SPECIFIC_2
UNION
....
Это в DB2, но я ищу общее решение SQL, исходный запрос - зверь (1000 строк +), поэтому я абстрагирую предложение WHERE. Пожалуйста, дайте мне знать, если понадобятся дополнительные разъяснения.