|
|
|
Проверка на null геометрии
|
|||
|---|---|---|---|
|
#18+
Добрый день. Обнаружил такую особенность. Имеется таблица с полем типа "MDSYS.SDO_GEOMETRY" В таблице 10 ки тысяч записей. Некоторые записи имеют сложную геометрию. Запрос Код: plsql 1. Отрабатывает очень долго. Как будь-то объект полностью "загружается" при запросе. Проверено на: Oracle Database 10g Release 10.2.0.5.0; Oracle Database 11g Enterprise Edition Release 11.2.0.4.0. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2018, 07:13 |
|
||
|
Проверка на null геометрии
|
|||
|---|---|---|---|
|
#18+
Григорий Поверенный, А более гуманные способы nvl2, decode ... работают быстрее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2018, 10:20 |
|
||
|
Проверка на null геометрии
|
|||
|---|---|---|---|
|
#18+
Григорий Поверенный, возможно имеет смысл дежжать статусную is_present char(1) 'Y'/'N'. ТОгда вообще по индексу сможете искать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2018, 11:30 |
|
||
|
Проверка на null геометрии
|
|||
|---|---|---|---|
|
#18+
MaximaXXLГригорий Поверенный, А более гуманные способы nvl2, decode ... работают быстрее? Нет к сожалению... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 07:30 |
|
||
|
Проверка на null геометрии
|
|||
|---|---|---|---|
|
#18+
JonhsonГригорий Поверенный, возможно имеет смысл дежжать статусную is_present char(1) 'Y'/'N'. ТОгда вообще по индексу сможете искать. Скорее придётся так и сделать. А триггером обрабатывать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 07:31 |
|
||
|
Проверка на null геометрии
|
|||
|---|---|---|---|
|
#18+
Григорий Поверенный, А что вы пытаетесь этим сделать? Если проверку в обычный WHERE вынести, то работает быстрее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 09:33 |
|
||
|
Проверка на null геометрии
|
|||
|---|---|---|---|
|
#18+
Ну и попробуйте подсунуть ему хинт /* +FIRST_ROWS */ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 09:39 |
|
||
|
Проверка на null геометрии
|
|||
|---|---|---|---|
|
#18+
Alexander RyndinГригорий Поверенный, А что вы пытаетесь этим сделать? Если проверку в обычный WHERE вынести, то работает быстрее? Мне нужно просто выводить, есть ли геометрия у объекта или есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2018, 10:00 |
|
||
|
Проверка на null геометрии
|
|||
|---|---|---|---|
|
#18+
[quot Григорий Поверенный]Alexander RyndinГригорий Поверенный, Мне нужно просто выводить, есть ли геометрия у объекта или НЕТ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2018, 10:00 |
|
||
|
Проверка на null геометрии
|
|||
|---|---|---|---|
|
#18+
Что нибудь типа такого не быстрее будет работать? Код: plsql 1. 2. 3. Ну так, в плане эксперимента ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2018, 10:28 |
|
||
|
Проверка на null геометрии
|
|||
|---|---|---|---|
|
#18+
Сделал такой под запрос для поля. Код: sql 1. Всё отлично работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2018, 08:17 |
|
||
|
Проверка на null геометрии
|
|||
|---|---|---|---|
|
#18+
Григорий Поверенный, Мне кажется: (case count(*) when 0 then 0 else 1 end) эквивалентна sign(count(*)) Ну и я бы поставил скобки к not, так будет более читабельно и если кто-то решит дописать условие то обратит внимание ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2018, 10:46 |
|
||
|
Проверка на null геометрии
|
|||
|---|---|---|---|
|
#18+
MaximaXXLМне кажется: а может там TABLE.id уникальный ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2018, 10:54 |
|
||
|
Проверка на null геометрии
|
|||
|---|---|---|---|
|
#18+
123ййMaximaXXLМне кажется: а может там TABLE.id уникальный тогда хватит и count(*), но мне кажеться sign() операция легче чем case, а делает то-же самое в конкретном примере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2018, 10:57 |
|
||
|
|

start [/forum/topic.php?fid=52&fpage=106&tid=1883667]: |
0ms |
get settings: |
6ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
18ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 205ms |
| total: | 286ms |

| 0 / 0 |
