powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / проблемы с выполнением запроса
13 сообщений из 13, страница 1 из 1
проблемы с выполнением запроса
    #32622595
mt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mt
Гость
Есть запрос:
SELECT *
FROM v_goods_search
WHERE PRICE_SALE = :price
order by GoodsDescr

Выполняем, получаем следующие результаты:

1. Например, price = 0,45 - возвращает N строк.
2. Например, price = 0,96 - Нет данных, хотя в таблице есть строки с PRICE_SALE = 0,96

Результаты при выполнении в D6+FibPlus 5.1+FB1.5 и IBExpert идентичны.

Подскажите что, куда и где копать?
...
Рейтинг: 0 / 0
проблемы с выполнением запроса
    #32622603
Фотография VF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тип поля PRICE_SALE какой и диалект какой?
...
Рейтинг: 0 / 0
проблемы с выполнением запроса
    #32622607
mt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mt
Гость
VFтип поля PRICE_SALE какой и диалект какой?

Тип поля DOUBLE PRECISION
SQL Dialect 3
...
Рейтинг: 0 / 0
проблемы с выполнением запроса
    #32622624
mt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mt
Гость
Сейчас копаюсь в IBExperte, так вот:

если сделать так

WHERE PRICE_SALE + 1 = :price + 1

то все находится.
...
Рейтинг: 0 / 0
проблемы с выполнением запроса
    #32622652
Фотография Dnico
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А попробуй вместо 0,96 набрать 0.96

Best regards,
Dnico.
...
Рейтинг: 0 / 0
проблемы с выполнением запроса
    #32622666
mt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mt
Гость
Нашел, но почему оно так - не пойму.

сделал

SELECT cast(price_sale as VARCHAR(100)), cast((price_sale+1) as VARCHAR(100))
FROM v_goods_search


и получил результат

'0.6900000000000001', '1.690000000000000'

пробежал по результату - некоторые значения имеют в 1 в 16-й позиции,
хотя данные записываются четко с 2-я знаками после запятой
...
Рейтинг: 0 / 0
проблемы с выполнением запроса
    #32622677
mt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mt
Гость
DnicoА попробуй вместо 0,96 набрать 0.96

Best regards,
Dnico.

Про десятичный разделитель я в курсе.
В программе разделитель правильный - '.'

а IBExpert сам его подменяет на необходимый
...
Рейтинг: 0 / 0
проблемы с выполнением запроса
    #32622708
Dremuchij Forester
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пользуй NUMERIC.
...
Рейтинг: 0 / 0
проблемы с выполнением запроса
    #32622726
mt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mt
Гость
Dremuchij ForesterПользуй NUMERIC.

можное и его, а можно цену хранить в копейках, что по моему разумению будет правильнее.
...
Рейтинг: 0 / 0
проблемы с выполнением запроса
    #32622760
mt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mt
Гость
Спасибо

Сделал NUMERIC, так как для хранения данных в копейках, надо прилично кода переделать (на клиенте и в БД)
...
Рейтинг: 0 / 0
проблемы с выполнением запроса
    #32622879
Фотография Johnmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Рекомендую прочитать
...
Рейтинг: 0 / 0
проблемы с выполнением запроса
    #32622947
mt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mt
Гость
JohnmenРекомендую прочитать

Уже вспомнил про фишки вещественных чисел.

спасибо за ссылку : повторенье - мать ученья :)
...
Рейтинг: 0 / 0
проблемы с выполнением запроса
    #32623529
Фотография VF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну вот всё и без меня рассказали и показали
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / проблемы с выполнением запроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]