powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / NUM_ROWS<>count(*)
4 сообщений из 4, страница 1 из 1
NUM_ROWS<>count(*)
    #39392048
Pavlon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пожалуйста, объясните, почему может не совпадать значение NUM_ROWS таблицы (или первичного индекса) с результатом запроса select count(*) from table;
У одной таблицы count(*)<>dba_tables.NUM_ROWS при этом count(*)=dba_indexes.NUM_ROWS, у другой наоборот -
count(*)<>dba_indexes.NUM_ROWS при этом count(*)=dba_tables.NUM_ROWS.
Сравнение производится при условии, что операции с таблицами не выполняются.

При чем разница между count(*) и "неправильным" значением NUM_ROWS не является постоянной величиной. "Неправильное" значение NUM_ROWS меняется всякий раз после сбора статистики. Статистика собирается через DBMS_STATS. Версия Oracle 10.2.0.5.
Что это? Проблема конкретных таблиц/индексов или баг Oracle?
...
Рейтинг: 0 / 0
NUM_ROWS<>count(*)
    #39392056
Фотография dbms_photoshop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavlon,

estimate_percent?
...
Рейтинг: 0 / 0
NUM_ROWS<>count(*)
    #39392058
Pavlon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
статистику собираю так
dbms_stats.gather_table_stats(ownname => 'OWNER', tabname => 'T1', method_opt => 'for all columns size 1', cascade => true);
...
Рейтинг: 0 / 0
NUM_ROWS<>count(*)
    #39392130
Pavlon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, estimate_percent стоит auto, на усмотрение oracle. Поставил 100, разница убралась.
Спасибо. Тему можно закрыть.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / NUM_ROWS<>count(*)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]