За последние 24 часа нас посетили 17612 программистов и 1626 роботов. Сейчас ищут 1723 программиста ...

Помогите составить сложный запрос, плиз.

Тема в разделе "PHP и базы данных", создана пользователем stlesha, 3 авг 2008.

  1. stlesha

    stlesha Активный пользователь

    С нами с:
    3 авг 2008
    Сообщения:
    4
    Симпатии:
    0
    Привет всем, помогите составить такой запрос:
    есть таблица, в ней date, user, id
    даты идут по порядку, а вот юзер и ид разные
    нужно по каждому юзеру выбрать даты идущие по порядку до первого пробела, потом следующий блок дат, и т.д.
    Это какого числа работал определенный пользователь - когда числа подряд, до перерыва, это его рабочая смена. Мне нужно вывести 5 последних смен выбранного пользователя. Причем кто то работал 5 дней подряд, кто то один день.
    Спасибо, за любой совет. Может нужно один запрос, а потом разбивать как то?
    PHP и Mysql.
     
  2. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Скорее всего придется делать обычную выборку, а потом через php анализировать.
     
  3. R22

    R22 Активный пользователь

    С нами с:
    24 мар 2008
    Сообщения:
    78
    Симпатии:
    0
    Адрес:
    Odessa
    [sql]select concat(a.`user`, a.`date`) as group_by_cond from table as a group by group_by_cond order by if(a.`date`='', 2-relevance, 1-relevance) [/sql]
    Не знаю может быть и решение. Нужно попробовать, что будет быстрее. Разбор php или такого вида запросы.
    2-relevance- лучше указывать int, relevance просто для примера.
     
  4. stlesha

    stlesha Активный пользователь

    С нами с:
    3 авг 2008
    Сообщения:
    4
    Симпатии:
    0
    Скорость не важна. Т.к. обращения редки и база не велика. Буду пробовать, спасибо!