Гость
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Почему так медленно SELECT COUNT(*) / 25 сообщений из 133, страница 1 из 6
16.07.2004, 15:17
    #32608406
Johnny Bombardir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
У меня есть таблица TempTbl, в которую я загружаю около 600тыс. записей.

И запрос SELECT count(*) FROM TempTbl; длится около 10 сек. Почему так?
...
Рейтинг: 0 / 0
16.07.2004, 15:22
    #32608427
stdio
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
А почему Вы считаете, что должно быть быстрее?
_______________
Alex
There are three kinds of people: those who can count and those who can't
...
Рейтинг: 0 / 0
16.07.2004, 15:24
    #32608433
Александр К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
Попробуй SELECT COUNT(1)

Удачи.
...
Рейтинг: 0 / 0
16.07.2004, 15:56
    #32608551
olek
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
Александр КПопробуй SELECT COUNT(1)

Удачи.Миф
/topic/92459&hl=#675568
...
Рейтинг: 0 / 0
16.07.2004, 16:05
    #32608576
killed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
stdioА почему Вы считаете, что должно быть быстрее?
_______________
Alex
There are three kinds of people: those who can count and those who can't

Не, ну реально должно быть 7 секунд :))
...
Рейтинг: 0 / 0
16.07.2004, 16:07
    #32608585
Johnny Bombardir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
Александр КПопробуй SELECT COUNT(1)
Удачи.

Нет, не помогло.
...
Рейтинг: 0 / 0
16.07.2004, 16:20
    #32608614
olek
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
Причиной может быть, например, высокий уровень hwm
/topic/95726&hl=
/topic/101861&hl=
...
Рейтинг: 0 / 0
16.07.2004, 16:20
    #32608615
ujin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
Johnny BombardirНет, не помогло.

По-моему SELECT COUNT(ROWID) - наилучший вариант.
...
Рейтинг: 0 / 0
16.07.2004, 16:24
    #32608625
Alexander Dubrovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
olek Александр КПопробуй SELECT COUNT(1)

Удачи.Миф
/topic/92459&hl=#675568
Не миф. Практика.
...
Рейтинг: 0 / 0
16.07.2004, 16:37
    #32608659
olek
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
Alexander DubrovskyНе миф. Практика.Было бы интересно разобраться в этом вопросе. Не могли бы Вы выложить тест, который бы это подтверждал?
О том того, что у count(1) или count(rowid) нет преимуществ, говорит тред на asktom, ссылка на которые приведена.
мне не удалось найти такой "хитрый" пример, который бы подтверждал недостатки count(*). Если у Вас есть - приведите, пожалуйста.
...
Рейтинг: 0 / 0
16.07.2004, 17:13
    #32608747
Johnny Bombardir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
В таблице 632581 записей, ,Процессор 800 МГц

count(*) - 14,860
count(1) - 15,015 сек
count(rowid) - 14,891 сек

Причем показания варьируются от запуска к запуску +/- 0,3-0,5
...
Рейтинг: 0 / 0
16.07.2004, 17:19
    #32608763
Ora-мучитель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
А так пробовали

count(log(2,4))
...
Рейтинг: 0 / 0
16.07.2004, 17:22
    #32608775
denm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
sum(1) еще попробуйте :)
...
Рейтинг: 0 / 0
16.07.2004, 17:27
    #32608786
Ora-мучитель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
2 denm

Нет, так точно быстрее не будет, надо

sum(2)/2
...
Рейтинг: 0 / 0
16.07.2004, 17:32
    #32608807
Alexander Dubrovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
Ora-мучитель2 denm

Нет, так точно быстрее не будет, надо

sum(2)/2
На ноль дели, на ноль :)
...
Рейтинг: 0 / 0
16.07.2004, 17:40
    #32608841
Ora-мучитель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
2 Alexander Dubrovsky

Поделил на ноль.

ORA-01476: делитель равен нулю

Мне кажется на ноль делить нельзя ?!
...
Рейтинг: 0 / 0
16.07.2004, 17:52
    #32608874
Destroy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
Ора-мучитель, ты ведь шутил, правда?
Как шутил сегодня Эш+ в топике про модуль.

Или может оракл корпу стоит задуматься о включении в доку "Math Concepts"?
...
Рейтинг: 0 / 0
16.07.2004, 18:02
    #32608900
Ora-мучитель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
Кстати в топике "про модуль" тоже очевидные ошибки.
По-моему каждый знает, что "модуль" - функция унарная и работает так

MOD(-5) = MOD(5) = 5

А на счет деления на ноль, я "серьезно поделил".
Буду ждать атаки Fuckera.
...
Рейтинг: 0 / 0
16.07.2004, 18:08
    #32608917
Destroy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
Ну, если быть занудой, то тот модуль, о котором ты говоришь пишется в математике как |-5|, а само слово "mod" встречается в алгебре только в смысле 30 mod 7 = 2 =)))
...
Рейтинг: 0 / 0
16.07.2004, 18:13
    #32608930
Ora-мучитель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
Все! Я опозорен !
...
Рейтинг: 0 / 0
16.07.2004, 18:30
    #32608962
Alexander Dubrovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
Ora-мучительВсе! Я опозорен !
лол
...
Рейтинг: 0 / 0
17.07.2004, 10:54
    #32609205
slim
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
Johnny BombardirУ меня есть таблица TempTbl, в которую я загружаю около 600тыс. записей.
И запрос SELECT count(*) FROM TempTbl; длится около 10 сек. Почему так?

Попробуй собрать статистику по таблице.
...
Рейтинг: 0 / 0
17.07.2004, 16:26
    #32609324
aars
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
1.Долго по сравнению с чем?
2.Что значит "гружу данные", вроде разговор про запрос идет?
3.'Temp' - обычная таблица?
4. план выполнения (лучше трассировка) о чем говорит.
5. Если сразу после загрузки (изменения) данных сделать запрос, затрагивающий измененные данные, то часть вычислительных ресурсов уйдет на "очистку" блоков (строк, которые были ранее блокированы, информация об этом еще сидит в заголовке) (у Кайта есть кое что про это на стр 250).
...
Рейтинг: 0 / 0
17.07.2004, 21:10
    #32609427
В.
В.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
Ваша таблица должна быть надлежащим образом проиндексирована и проанализирована, тогда ваш count(*) будет быстрее. Но вообще count(*) - это не обчень быстрая операция. Что касается count(1), то это миф.
Посмотрите, какие у вас индексы и если их нет, то создайте на ключвые колонки, а потом проанализируйте таблицу
ANALYZE TABLE table_name COMPUTE STATISTICS FOR TABLE FOR ALL INDEXES FOR ALL INDEXED COLUMNS;
...
Рейтинг: 0 / 0
19.07.2004, 10:57
    #32610052
sinoptic
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так медленно SELECT COUNT(*)
DestroyНу, если быть занудой, то тот модуль, о котором ты говоришь пишется в математике как |-5|, а само слово "mod" встречается в алгебре только в смысле 30 mod 7 = 2 =)))
В дополнение: в математике пишется |-5|, а на языках как правило ABS(-5).
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Почему так медленно SELECT COUNT(*) / 25 сообщений из 133, страница 1 из 6
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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