2015-07-30 3 views
2

Я использовал MAX() для получения максимального значения из столбца. Но он возвращает неверный вывод. Вот что возвращается Max(). Просьба предложитьФункция Max() не возвращает максимальное значение

SELECT Seq_No FROM Appltype WHERE App_No = '01' 

Выход: 1,2,3,4,5,6,7,8,9,10

SELECT MAX(Seq_No) FROM Appltype WHERE App_No = '01' 

Выход: 9 Может не в состоянии приложить изображение, я новичок в переполнению стека.

+10

Выход правильный, значения не являются числовыми, а 9 - более 10 букв. Если вы хотите, чтобы числовое число было максимальным, вам нужно выполнить бросок. – Joachim

+1

@ Vicky- Если ответ MegaTron - это то, что вы ищете. Пожалуйста, примите это как ответ – John

+1

Я не понимаю, почему люди всегда думают, что проблема связана с Microsoft, а не с кодом, который они пишут, или с данными, которые они используют. 99,9% случаев проблема заключается в непонимании правильного использования системной функции, а не в самих функциях системы. –

ответ

5

Поле Seq_No не является цифровым. Попробуйте этот запрос:

SELECT MAX(CAST(Seq_No as INT)) 
FROM Appltype 
WHERE App_No = '01' 
+0

[SQL Fiddle] (http://sqlfiddle.com/#!6/536d7/2) –

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