sysdate + interval table.field day

_test_
Дата: 19.11.2009 16:29:00
Ребят, конструкция sysdate + interval '30' day работает, а вот sysdate + interval table.field day, где table.field - поле таблицы, в которой хранятся числа типа integer не работает. Вылетает ошибка ORA-00907: missing right parenthesis на выделеном моменте. Я все грешу на то, что у меня Orcale XE. Подскажите, плиз. Спасибо.

Полностью запрос выглядит так:

select * from guest_rooms

where not exists (
select * from reservations_orders
where
reservations_orders.status='2' and
reservations_orders.ID_of_guest_room=r.ID_of_guest_room and
reservations_orders.from_ < sysdate and
sysdate + interval '30' day < reservations_orders.from_+ interval reservations_orders.days_count day
)
-2-
Дата: 19.11.2009 16:34:42
_test_,

Храни в таблице тип интервал, иначе функции типа numtodsinterval, to_dsinterval
suPPLer
Дата: 19.11.2009 16:37:10
_test_,

RTFM NUMTODSINTERVAL.
orawish
Дата: 19.11.2009 16:37:47
_test_,

sysdate + table.field
Elic
Дата: 19.11.2009 16:54:06
_test_
interval table.field day, где table.field - поле таблицы, в которой хранятся числа типа integer не работает. Вылетает ошибка ORA-00907: missing right parenthesis
Потому что литерал по определению должен быть константой. RTFM Interval Literals (FAQ)
_test_
Дата: 19.11.2009 18:17:03
спасибо, буду читать!
_test_
Дата: 19.11.2009 18:20:16
спасибо:


select * from guest_rooms r

where not exists (
select * from reservations_orders
where
reservations_orders.status='2' and
reservations_orders.ID_of_guest_room=r.ID_of_guest_room and
reservations_orders.from_ < sysdate and
sysdate + interval '30' day < reservations_orders.from_+ NUMTODSINTERVAL(reservations_orders.days_count, 'day')
)