LIMIT 3 не возвращает первые три строки в отсортированном RS (я думаю) - PullRequest
0 голосов
/ 26 октября 2009

В своей таблице я посмотрел вручную и обнаружил, что три верхних бездействующих блока простаивали 17, 13 и 13 дней. Когда я использую этот оператор SQL, чтобы попытаться вытащить три строки с наибольшим значением столбца бездействия, я не получаю эти числа, я получаю 8, 7 и 7. Есть ли какая-то другая команда, которую я должен использовать, чтобы получить первые 3 строки отсортированного набора результатов?

SELECT * FROM reporttables.idlereport ГДЕ ЛЕВЫЙ (депо, 3) = 'Roc' ЗАКАЗАТЬ НА ОЖИДАНИЕ DESC LIMIT 3

Может кто-нибудь помочь мне понять, что не так с этим утверждением

1 Ответ

2 голосов
/ 26 октября 2009

Является ли поле 'idle' числовым или типом данных char?

Порядок сортировки, который вы нашли, предполагает использование char, тогда «7» может быть «больше», чем «17».

После этого вы можете использовать данные типа char с помощью некоторого CONVERT. Точный синтаксис зависит от типа вашей СУБД.

...