Заказ Oracle по запросу очень медленный - PullRequest
0 голосов
/ 23 июля 2011

Я сталкиваюсь с проблемой при выполнении заказа по таблице.

Мой запрос на выборку работает нормально, но когда я выполняю заказ по (даже по первичному ключу), он просто продолжается и продолжается безРезультаты.Наконец мне нужно убить сессию.Таблица имеет 20 тысяч записей.Любое предложение для этого?Запрос выглядит так:

SELECT * FROM Users ORDER BY ID;

Я не знаю о плане запроса, так как я новичок в Oracle

1 Ответ

0 голосов
/ 23 июля 2011
  1. Для неупорядоченного запроса SQL Developer извлекает и отображает строки размером 20 КБ или только первые 50?Ваше сравнение может быть несправедливым.
  2. Каков размер этих строк по 20 КБ: select bytes/1024/1024 MB from user_segments where segment_name = 'USERS'; Я видел много случаев, когда несколько мегабайт данных используют много гигабайт хранилища.Возможно, раньше данные были очень большими, и кто-то просто удалил их (это не удаляет пространство).Или, может быть, кто-то вставил эти строки по одной за раз с подсказкой APPEND, и каждая строка занимает весь блок.
  3. Ваш запрос может ожидать более временного табличного пространства для сортировки, посмотрите DBA_RESUMABLE.
...