Oracle VPD, как ссылаться на таблицу - PullRequest
2 голосов
/ 19 октября 2010

Я борюсь со следующей проблемой.Я хочу ограничить доступ к таблице с помощью Oracle VPD.В предложении where, которое возвращает функция select policy, мне нужна ссылка на таблицу в подзапросе следующим образом:

select * from Table t1
where not exists (select 1 from Table t2 where t2.name=t1.name and t2.date=t1.date)

(Пример не имеет большого смысла, кроме как для иллюстрации проблемы)

У меня нет контроля над выбранной частью запроса.

select * from Table t1

В таблице может быть задан любой псевдоним или вообще нет.Поэтому я понятия не имею, как ссылаться на таблицу в предложении where.Есть ли способ обойти это?

(Oracle 10GR2)

1 Ответ

0 голосов
/ 19 октября 2010

Я думаю, вам нужно использовать NOT IN:

(name, datecol) not in (select name, datecol from table2)
...