За последние 24 часа нас посетили 22176 программистов и 1688 роботов. Сейчас ищут 1350 программистов ...

Помогите составить sql запрос... (выборка без повторов)

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

  1. EvelRus

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

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    Подскажите запрос...
    Есть таблица в ней поля... айди и список юзеверей через запятую....
    Как вывести все айди со списком юзеров, но так, что бы они не дублировались..
    Типа
    1 - 1,3,4,5,6
    2 - 2,3,4,5,7

    Вводятся 1,2,3,4,5,6,7
     
  2. tmanager

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

    С нами с:
    12 мар 2008
    Сообщения:
    108
    Симпатии:
    0
    Пока не поздно -- откажись от идеи хранить пользователей в тексте через запятую.

    Если опишешь задачу -- подскажу оптимальную структуру таблиц.
     
  3. topas

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

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    tmanager
    +1
     
  4. EvelRus

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

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    Задача... есть список пользователей платящих налог :)
    по запросу надо вывести список всех кто заплотил :)
    т.е. три поля
    ID user data_naloga

    и форма... заплатили за сегодня, за неделю. за месяц... и список
     
  5. topas

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

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    Nemo
    Ничего не понял из написанного.
    судя по приведенному примеру могу посоветовать составить таблицы:
    Таблица `user` = { id, name }
    Налоги: `charge` = { id, name, data }
    Связка:`'user_charge` = { id, user_id, charge_id, date }

    И получишь нормальные запросы, например все пользователи заплатившие по налогу с id=3
    [sql]SELECT * FROM `user` as t1 LEFT JOIN `user_charge` as t2 ON (t1.`id` = t2.`user_id`) WHERE t2.`charge_id` = 3[/sql]
    Если нужна информация еще и по налогу, то делаем три JOIN'a.

    P.S. теперь формулируй задачу :)