2016-09-08 2 views
1

enter image description hereВыберите макс возвращает неверное значение в MySQL

я выше таблицы, и я хочу, чтобы получить наибольшее значение из таблицы ставок where bid_id=60 с помощью следующего запроса

SELECT MAX(offer_amount) as maz FROM bids WHERE bid_id = 60 

Проблема в том, я» m получить результат как 80 вместо вместо правильного значения, которое составляет 7000000

Любой, у кого есть идея, как это решить?

+0

Aberrant case. Не могли бы вы поделиться ** sql скрипкой **? – 1000111

+4

Это «правильно». И хранить целые числа как целые числа и строки как строки – Strawberry

+0

@Strawberry это сработало Я изменил amount_column от VARCHAR до INT –

ответ

5

Магазин предлагает сумму в числовом поле (например, целое или десятичное), а не как текст. Быстрое решение заключается в использовании функции cast() в запросе для приведения типа данных поля к числовому.

+1

И мы можем сказать, что это строка, а не число, потому что значения выравниваются по левому краю в отображаемом фрагменте таблицы. –

+0

Быстрое решение заключается в добавлении 0 к значению – Strawberry

+0

Сработало изменение предложения Offer_amount от VARCHAR до INT. Спасибо вам, ребята –

Смежные вопросы