Текущее время: Вс, июл 20 2025, 09:52

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Вт, фев 21 2006, 13:24 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
Я, конечно, погорячился. В open sql все строки перебираются.

Но в mySQL, например, count(*) точно оптимизирован (начиная с версии x.x.x). Может знатоки Oracle и MS SQL меня поддержат.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, фев 21 2006, 13:31 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 07 2004, 10:39
Сообщения: 610
в оракл проверяли
перебирается

_________________
полный SAPец


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, фев 21 2006, 15:31 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, ноя 17 2004, 18:38
Сообщения: 211
Откуда: МО
Пол: Мужской
sibrin написал:
Я, конечно, погорячился. В open sql все строки перебираются.

Но в mySQL, например, count(*) точно оптимизирован (начиная с версии x.x.x). Может знатоки Oracle и MS SQL меня поддержат.


Возможно для sql без условия where это и так, но если указывается некоторое ограничение... думаю в зависимости от условия перебор будет идти или по индексу или производится фуллскан таблицы (обычно решает оптимайзер).


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, фев 21 2006, 18:19 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
Цитата:
но если указывается некоторое ограничение


Само собой. Даже если count( all_key_fields ) уже будет перебор.
Конструкция select count(*) в виде исключения относится не к DQL, а к DML.

В Oracle есть compute number, хотя в книге Oracle Press "Oracle9i. The Complete Reference" count(*) тоже встречается в примерах как метод подсчёта числа записей.

Раз уж в R/3 придумали Open SQL и скрыли DML и DDL ради совместимости, могли бы заодно оптимизировать select(*) как самое простое, что можно оптимизировать.

А вообще mySQL рулит, т.к. в нём поддерживаются тип таблиц MyISAM с фиксированной шириной строки (если все колонки фиксированы), а в R/3 очень многие таблицы и типы данных фиксированной ширины. В Oracle и MS SQL, вроде бы, не поддерживаются такие таблицы. А то что блокировки в MyISAM слабенькие SAP'у без раницы, посокльку на сервере приложений все блокировки реализованы. Может быть поэтому Maxdb базируется на mySQL.
(Побейте меня, если я не прав.)


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB