"Moiseyenko Dmitriy" ...
>
> > > Тут обнаружилась проблема с FB2 RC1.
> >
> > Это не проблема 2.0 - это родовая травма 3-го диалекта.
> > Добавь в таблицу ключ между 4.5 и 5.0 (например 4.8)
> > и увидишь это в любой версии
>
> Гм, действительно, похожая ошибка есть и в IB 7.1. А хоть известно, когда
> ошибка проявляется, только при использовании в запросе индекса с numeric?
Если индексируемое поле имеет тип NUMERIC, а сравниваемый с ним
предикат - double или char. В случае с double искомый ключ округляется
до целых математически, в случае с char - вниз. Подробнее я не раскапывал.
Т.е. в запросе
SELECT * FROM SG_T_PARAM A
WHERE A.ARG_NAME = 'H' AND A.ARG_VALUE > CAST(4.5 AS DOUBLE PRECISION)
происходит сравнение с 5
А в запросе
SELECT * FROM SG_T_PARAM A
WHERE A.ARG_NAME = 'H' AND A.ARG_VALUE <= '4.999'
сравнение с 4
> Может есть где описание ошибки, чтобы знать что не использовать, чтобы на
> нее не нарваться?
Не знаю. Явный каст в тип поля должен всегда помогать
> Я, так понимаю, исправлению она не подлежит?
Не в FB2
--
Хорсун Влад