Проблема проверки двойных значений в mysql

Я хочу сделать запрос, который выбирает только те строки, у которых значение 'стоимости' не превышает нуля. Столбец стоимости имеет двойной тип данных. Когда я пишу такой запрос,

select cost from xxx where cost>0;

он извлекает только те строки, у которых значение больше или равно единице. Например, он не принимает значения 0,02 или 0,3. В запросе значения этих типов равны нулю. Как я могу достичь своей цели? Спасибо за продвижение...

1 ответ

Решение

Я не могу воспроизвести вашу проблему, используя MySQL 5.41.

Покажите нам результат describe table xxx;

Что произойдет, если вы выполните запрос:

select cost from xxx where cost > 0.0;

Ваш запрос на самом деле:

 select ceil(cost) from xxx where cost > 0.0;

Если это так, для значений стоимости> 0, но <= 1, вы получите набор результатов 1.

Другие вопросы по тегам