Показать сообщение отдельно
Старый 17.05.2011, 23:00   #3  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,448 / 1792 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Если решение "в лоб" будет тормозить, можно попробовать альтернативный вариант:
Заранее выбрать строки (идентификаторы строк), подлежащие раскрашиванию, просто наложив пользовательский фильтр на вспомогательный query. Запомнить выбранные строки либо во временную таблицу, либо во вспомогательную постоянную. Дальше, в случае постоянной таблицы, её можно будет просто приджойнить (outer join) к основной и по факту наличия в ней записи делать необходимую раскраску строк. Временную таблицу, на сколько я помню приджойнить не получится, прийдётся каждый раз делать поиск строки, но всё равно должно быть быстрее чем делать проверку методом inRange.
У всех варинтов есть свои плюсы и минусы, в любом случае нужно тестировать и выбирать