|
MySQL.RU - Webboard
Вернуться
Вроде простой запрос а не соображу... (alexalnik) 04/01/2007 - 21:11:16
Re: А вот так попробовать? (Lev) 12/01/2007 - 21:26:18
> Original message text:
> From: alexalnik - 04/01/2007 - 21:11:16
> Subject:Вроде простой запрос а не соображу...
> -----------------
> Подскажите, плиз как в таблице OBJECTSTATE с полями OBJECT, DATE, STATE
> найти для каждого объекта самый свежий статус.
> Конструкция
> SELECT O1.OBJECT, O1.STATE
> FROM OBJECTSTATE O1
> WHERE O1.DATE = (SELECT MAX(O2.DATE)
> FROM OBJECTSTATE O2
> WHERE O2.OBJECT = O1.OBJECT)
> видится чрезмерно громоздкой :-(
> Может красивее бывает?
>
From: Lev - 12/01/2007 - 21:26:18
Subject:А вот так попробовать?
-----------------
Ну вот попробуйте такую конструкцию:
SELECT a.OBJECT,
RIGHT(max(concat(a.DATE, a.STATE)),char_length(max(concat(a.DATE, a.STATE)) - q)
FROM OBJECTSTATE a
GROUP BY a.OBJECT;
_ _ _
здесь вместо q надо поставить число символов в DATE (поэксперементируйте, мне некогда а может лень самому разбираться сейчас).
Кстати, если у Вас STATE имеет постоянную длину, то вместо
char_length(max(concat(a.DATE, a.STATE)) – q
можно поставить просто константу…
Большая просьба: если попробуете и добъетесь результата – проинформируйте! мне тоже интересно, что получится…
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
30498
|
|