За последние 24 часа нас посетили 18008 программистов и 1650 роботов. Сейчас ищут 1659 программистов ...

как выбрать с базы данных строки имеющие не уникальные значения(игнорируя их)

Тема в разделе "MySQL", создана пользователем AlexsaiL, 1 мар 2017.

  1. AlexsaiL

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

    С нами с:
    23 дек 2016
    Сообщения:
    327
    Симпатии:
    23
    Подскажите , как с базы данных с таблицы к примеру изображений, выбрать только те поля id продукта не имеющие уникальное значение(проигнорировать такие значения).
     
  2. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Так выбрать или проигнорировать?
     
  3. AlexsaiL

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

    С нами с:
    23 дек 2016
    Сообщения:
    327
    Симпатии:
    23
    выбрать простые, уникальные проигнорить
     
  4. alexblack

    alexblack Старожил

    С нами с:
    20 янв 2016
    Сообщения:
    640
    Симпатии:
    381
    Если я правильно понял задачу,то:
    Код (Text):
    1. SELECT id, COUNT(*) FROM table_name GROUP BY id HAVING COUNT(*) > 1
     
    [vs] нравится это.
  5. AlexsaiL

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

    С нами с:
    23 дек 2016
    Сообщения:
    327
    Симпатии:
    23
    вот такой запрос:
    Код (Text):
    1. SELECT * FROM `pictures` WHERE  `ID_PRODUCT` = '{$result}'  ORDER BY `ORDERA` DESC
    а так как под одним ID_PRODUCT имеется несколько строк с изображениями он сортирует по столбцу ордеру чтобы выбрать первое изображение, из столбца, но если присутствует строка с уникальным ID_PRODUCT то он игнорирует запрос и выбирает уникальное(а это не есть хорошо)
    --- Добавлено ---
    а как мне реализовать с таким запросом ? как его будет лучше переделать?
    Код (Text):
    1. SELECT * FROM `pictures` WHERE  `ID_PRODUCT` = '{$result}'  ORDER BY `ORDERA` DESC