2013-08-18 2 views
0

У меня есть новая проблема прямо сейчас, и мне было интересно, почему его не отображает ..PHP: не получить последнюю строку в моей базе данных

Сценарий:

У меня есть длительность, где продолжительность хорошо только до 10:00 ....

В моей базе данных:

bldgName duration 

blgA   9:55 
bldgA  9:40 
bldgB  1:40 

Как мы можем видеть, моя последняя строка, если я использовал «DESC» его внешний вид Li ke, что ... Итак, моя последняя запись в моем bldgA - 9:55 ... Я добавлю еще 5s под bldgA, и это станет 10:00, что правильно ... Итак, вот моя база данных на данный момент ..

Текущая база данных после добавления 5 секунд.

bldgName duration 

blgA   10:00 
blgA   9:55 
bldgA  9:40 
bldgB  1:40 

Вот мой запрос:

$radio = mysql_query("SELECT fldBldgName, MAX(fldTotalDuration) as fldTotalDuration FROM tbldata WHERE fldNetname = '".$get_radio."' AND fldMonth = '".$get_month."' AND fldWeek = '".$get_week. "' GROUP BY fldBldgName ORDER BY id, fldBldgName, fldTotalDuration DESC"); 

Так что, когда программа чтения этот запрос выше ...

выход, как это ...

bldgName duration 

blgA   9:55 
bldgB  1:40 

Это неправильно ...

правильный выход

bldgName duration 

blgA   10:00 
bldgB  1:40 

А также, у меня нет никакой фильтрации еще, когда длительность соответствует 10:00

Спасибо за заранее ...

+2

Что, черт возьми, это? Я не понял немного вопроса – h2O

+0

все, что я вижу, это оператор выбора, почему вы не пытаетесь вставить или обновить –

+0

@ BenLind..There я редактирую свой вопрос ... –

ответ

1

Я думаю, что я понял, что он означает. Похоже, вы хотите получить максимальную продолжительность, fldTotalDuration для ввода varchar? если да, это нормально, что максимальный - 9:55, потому что поле сортируется в алфавитном порядке, я предлагаю вам изменить тип поля на десятичный, и он должен работать.

Bye Gnagno

+0

@ Гнаньо ... спасибо за понимание моего вопроса ... Я использую ТЕКСТ только во всех полях .. –

+0

в вашем случае поле TEXT не самый лучший тип, вы должны изменить его на десятичный или int :) – Gnagno

+0

Если я изменил его на десятичный или int, «:» никогда не будет сохранен, потому что его не число .. Thats почему я использовал ТЕКСТ, чтобы я мог сохранить также «:» [двоеточие] –

0

Вместо того, чтобы изменить его на INT или DECIMAL, я просто решил изменить к ВРЕМЕНИ ... Так его уже сейчас работает ...

А также спасибо за комментирование и дать некоторые идеи, которые помогают ему много.