Можно ли как-то ускорить запрос?

Eva_2006
Дата: 28.02.2007 10:58:00
У меня в курсоре выполняется много действий. В том числе и вот этот запрос (выполняется очень долго):

		select /*+ index(idx_1)*/ nvl(sum(c.a + c.b - c.d),0) into sum_c
		from my_table c
		where c.ID between min_val and max_val
			  and c.dev_ID = work_rec.dev_id
			  and c.START < trunc(sysdate-1)
			  and c.START >= trunc(sysdate-2)
			  and (c.a + c.b - c.d)>0
			  and rownum = 1;

Индекс по полю с.ID

Таблица огромная. Я хочу данным скриптом узнать, было ли хоть одно положительное значение (c.a + c.b - c.d)
Q u a d r o
Дата: 28.02.2007 11:13:56
Создать FBI-индекс по (c.a + c.b - c.d) и использовать его (можно по sign(c.a + c.b - c.d) с компрессией).
Jannny
Дата: 28.02.2007 11:14:36
Я хочу выучить французский, можно как-нибудь быстрее? :)

Индексы, селективность план - информация, короче!
Eva_2006
Дата: 28.02.2007 11:14:38
прав на создания индекса в данной таблице у меня нет :(
evostr
Дата: 28.02.2007 11:19:21
Jannny
Индексы, селективность план - информация, короче!

+1

2 Eva_2006: А зачем хинт? еще и неправильный...
Eva_2006
Дата: 28.02.2007 11:19:57
План

  Statement Id=100   Type=
  Cost=1,95393204702016E-307  TimeStamp=28-02-07::11::18:12
  
       (1)  SELECT STATEMENT  CHOOSE 
     Est. Rows: 1  Cost: 2
       (7)  SORT AGGREGATE 
     Est. Rows: 1
           (6)  COUNT STOPKEY
               (5)  FILTER
                   (4)  PARTITION HASH ALL
                       (3)  TABLE ACCESS BY LOCAL INDEX ROWID UM.my_table  [Analyzed] 
                            Blocks: 170 991 132 Est. Rows: 1 of 9 657 098 051  Cost: 2
                           (2)  NON-UNIQUE INDEX RANGE SCAN UM.IDX_1  [Analyzed] 
                                Est. Rows: 1  Cost: 4

Вот только статиска по таблице я не знаю, когда собиралась. А собирать по-новой мне нельзя....
Eva_2006
Дата: 28.02.2007 11:21:29
Надо /*+ index(с idx_1)*/ ?

Таблицу обязательно указывать? или ошибка в чем-то другом?
Jannny
Дата: 28.02.2007 11:25:14
Eva_2006
Надо /*+ index(с idx_1)*/ ?
Таблицу обязательно указывать? или ошибка в чем-то другом?
В этом, вот только судя по плану, Оракл и сам разберется.

Eva_2006
Вот только статиска по таблице я не знаю, когда собиралась. А собирать по-новой мне нельзя....
Своеобразные условия...
Eva_2006
Дата: 28.02.2007 11:26:45
просто я новый сотрудник и мне пока не все позволено.... безопасность!
Q u a d r o
Дата: 28.02.2007 11:27:59
Eva_2006
просто я новый сотрудник и мне пока не все позволено.... безопасность!

Сделайте рядом копию, протестируйте и идите к тому кому позволено.