Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Опять нарушения (Dober) 05/02/2008 - 22:40:07
      Re: Опять нарушения (Вопрошающий) 06/02/2008 - 01:10:47
      Re: Опять нарушения (Dober) 06/02/2008 - 01:58:48
      Re: Опять нарушения (Вопрошающий) 06/02/2008 - 02:04:30
      Re: Опять нарушения (Dober) 06/02/2008 - 02:24:18
      Re: Опять нарушения (Вопрошающий) 06/02/2008 - 02:51:12
      Re: Опять нарушения (Dober) 06/02/2008 - 03:29:10
      Re: вот решение без алиасов (100% работает в 5.0) (Вопрошающий) 06/02/2008 - 03:38:34
      Re: примерно так и сделал (Dober) 06/02/2008 - 13:37:59
      Re: а если задним числом? (Dober) 08/02/2008 - 05:37:15
      Re: нашёл такое решение (Dober) 08/02/2008 - 07:02:10
      Re: примерно так и сделал (Вопрошающий) 08/02/2008 - 07:24:39

> Original message text:
> From: Dober - 05/02/2008 - 22:40:07
> Subject:Опять нарушения
> -----------------
> Есть табличка
> idнарушения | idнарушителя | time | type | info
>
> надо привести данные к виду
> idнарушителя | idнарушения1 | time1 | type1 | info1 | idнарушения2 | time2 | type2 | info2
>
> где индекс 1 относится к первому нарушению ЭТИМ пользователем
> а индекс 2 относится к последнему нарушению ЭТИМ пользователем
> первое и последнее - по критерию времени.
>
> то есть для всех нарушителей, которые ЕСТЬ в этой таблице надо вывести информацию о первом и последнем нарушении. если у него оно всего одно - то второе может быть идентичным первому или отсутствовать.
>
> использование функций MAX и MIN ко времени не приводит к нужному результату, так как возвращает только время, а не само нарушение с минимальным (максимальным) временем
>
> сортировка по времени с LIMIT 1 тоже ограничивает не так как надо - или я неправильно её использую.
>
> очевидно, что надо скрестить таблицу с собой, но как - что-то не догоню.
>
> для начала хотелось бы научиться выбирать хотя бы ОТДЕЛЬНО первое и последнее нарушение для каждого
>


From: Вопрошающий - 06/02/2008 - 02:04:30
Subject:Опять нарушения
-----------------
> или Вы уверены, что idнарушения будет монотонно по времени?

Это не мне надо такой вопрос задавать, а тебе. Кто логику аппликухи знает? :)
По уму, если новое нарушение всегда имеет более свежую дату - то мой селект будет работать. Если же новое нарушение может быть оформлено задним числом, то можно подумат над видоизмением запроса. Сходу могу сказать лишь как в Оракле такое сделать с помощью RowId, а вот MySQL такую конструкцию точно не потянет.
Короче, надо проверить, всегда ли нарушение с бОльшим ID имеет более свежую дату. Если да - то не парься.


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
33018



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |