2011-12-22 5 views
1

'теста' TableОшибка при получении соответствующего DATETIME значения максимальной

+------+--------------------+ 
|value | dateTime  | 
+------+--------------------+ 
|19 |2011-12-22 11:09:42 | 
+------+--------------------+ 
|16 |2011-12-22 05:09:00 | 
+------+--------------------+ 
|2  |2011-12-22 07:09:42 | 
+------+--------------------+ 
|30 |2011-12-22 10:09:15 | 
+------+--------------------+ 
|45 |2011-12-22 03:09:42 | 
+------+--------------------+ 

Я хотел бы получить значение Max и соответствующее DateTime. В этом случае конечный результат должен быть: Максимальное значение: 45 и dateTime: 2011-12-22 03:09:42. Я использовал

SELECT MAX(`value`) , `dateTime` 
FROM `test` 

После выполнения выше инструкции SQL, максимальное значение '' является правильным (то есть 45), но 'DATETIME' не является правильным (ie2011-12-22 11:09:19)

Есть ли кто-нибудь, кто может мне помочь? Большое спасибо!

ответ

2
-- general 
select * 
from test 
where value= (select max(value) from test) 

или

--tsql 
select top 1 * 
from test 
order by value desc 

или

--mysql 
select * 
from test 
order by value desc 
limit 1; 
+0

ОП ищет максимальное значение, а не максимальное DateTime :) – Andomar

+0

@Andomar Нет, ОП ищет максимальное значение и соответствующее DateTime, так что запрос должен произвести желаемый результат. –

+0

Ошибка, исправлена ​​:-). –

3

попробовать это:

SELECT TOP 1 `value`, `dateTime` 
FROM `test` 
ORDER BY `value` DESC 
Смежные вопросы