Консультация № 97512
06.08.2007, 15:15
0.00 руб.
0 2 2
КАК ТО СТРАННО ПРОИСХОДИТ поиск в программе. Стоит сервер SQL на главной машине, базы – MySQL. Происходит поиск по полю “сумма” (документы отсортированы по полю “сумма”, в базе есть по несколько документов с одинаковыми суммами), система находит документы и курсор встает не на первый в списке документ, а на второй (причем как уже было замечено эти документы с одинаковыми суммами, т.е. все документы удовлетворяют поиску). По некоторым суммам вообще не идет поиск, например, документ с суммой 621.30 в списке есть, а система его не находит, говорит, нет документа с таким значение в поле сумма. Программа называется “Связь-банк”, может кто-нибудь встречался на практике с такой проблемой.

Обсуждение

Неизвестный
06.08.2007, 15:43
общий
это ответ
Здравствуйте, Kimop!

Вероятно, Вы столкнулись с фокусами округления чисел: в базе, к примеру, хранится значение вроде 621.299999995 или 621.30000005 и при отображении округляется до 2 знаков после запятой. Если у Вас есть возможность, попробуйте искать по интервалу от 621.29 до 621.31. Если “Связь-банк” такого не позволяет, то остаётся лишь обратиться к разработчику...
Неизвестный
07.08.2007, 01:49
общий
это ответ
Здравствуйте, Kimop!
Сталкивался с подобной ситуацией, когда поле для хранения числа было не числовым, а символьным. При этом, уже имеет значение, какой символ разделитель Вы используете - либо ".", либо ",". Попробуйте произвести поиск с другим символом-разделителем (возможно, еще "-").
Форма ответа