Я видел дискуссии по этому поводу в прошлом, например здесь . Но мне интересно, если где-нибудь на линии, может быть, 10g или 11g (мы используем 11g), ORACLE представила лучшую поддержку «параметризованных представлений», без необходимости засорять базу данных всеми видами пользовательских типов и или определения курсора или переменные sys_context во всем.
Я надеюсь, что ORACLE добавил поддержку чего-то, что просто "просто работает", как в следующем примере в T-SQL:
CREATE FUNCTION [dbo].[getSomeData] (@PRODID ROWID)
RETURNS TABLE AS
RETURN SELECT PRODID, A, B, C, D, E
FROM MY_TABLE
WHERE PRODID = @PRODID
Тогда просто выбрав его так:
SELECT * FROM dbo.getSomeData(23)