Вопрос к ГУРУ

Вопрос к ГУРУ
Дата: 17.06.2011 10:32:12
Здравствуйте.

Подскажите, пожалуйста, на сколько уменьшается скорость запроса, если в нем учавствует оператор CASE ???
Гавриленко Сергей Алексеевич
Дата: 17.06.2011 10:33:19
Сферический запрос в вакууме всегда работает одинаково, что с case, что без него.
Вопрос к ГУРУ
Дата: 17.06.2011 10:36:23
Извините, плиз, имел ввиду на сколько увеличивается время и следует ли избегать CASE при больших объемах данных
Гавриленко Сергей Алексеевич
Дата: 17.06.2011 10:38:04
Вопрос к ГУРУ
Извините, плиз, имел ввиду на сколько увеличивается время и следует ли избегать CASE при больших объемах данных
Хорошо. Запросы бывают разные, case'ы бываю разные. Вы про какие именно запросы и кейсы спрашиваете?
Вопрос к ГУРУ
Дата: 17.06.2011 10:52:32
Как долго будет работать конструкция в SELECT-е на 10 млн. записях:

CASE @isSeeMN
WHEN 1 THEN cZakaz
ELSE 0
END AS cZakaz,
CASE @isSeeMN
WHEN 1 THEN cOtgr
ELSE 0
END AS cOtgr,
CASE @isSeeMN
WHEN 1 THEN cTrnsit
ELSE 0
END AS cTrnsit
ЕвгенийВ
Дата: 17.06.2011 11:01:07
Вопрос к ГУРУ
Как долго будет работать конструкция в SELECT-е на 10 млн. записях:

CASE @isSeeMN
WHEN 1 THEN cZakaz
ELSE 0
END AS cZakaz,
CASE @isSeeMN
WHEN 1 THEN cOtgr
ELSE 0
END AS cOtgr,
CASE @isSeeMN
WHEN 1 THEN cTrnsit
ELSE 0
END AS cTrnsit

без сомнения 736,239501 секунд!
Нектотам
Дата: 17.06.2011 11:06:52
Вопрос к ГУРУ
Как долго будет работать конструкция в SELECT-е на 10 млн. записях:

Если эти 10 млн замисей не лежат в памяти и эти записи типичного размера в сотни байт (не 8 кб и не 16 байт), и все они участвуют в итоговой выборке, то скорее всего на современном железе ограничивающим фактором будет скорость чтения с диска и отдачи клиенту, а не процессорное время для CASE
Уленшпигель
Дата: 17.06.2011 11:10:59
Вопрос к ГУРУ,

поскольку case в селекте работает с уже готовым набором данных в памяти и сводится к, по сути, подстановке указателя на нужное поле в строке готового набора данных, то время его работы, скорее всего, будет ничтожно, по сравнению со временем чтения 10 млн записей с диска.
Вопрос к ГУРУ
Дата: 17.06.2011 11:29:01
Спасибо всем за ответы :)
Критик
Дата: 17.06.2011 13:12:24
Потом окажется, что этот case в условии запроса или в условии соединения таблиц)