SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 21.11.2017 22:46:20

Ilya_Ru
Участник
Зарегистрирован: 21.11.2017
Сообщений: 10

Выборка уникальных значений по двум столбцам

Доброго времени суток, в общем, столкнулся с такой проблемой. Нужно вывести данные из таблицы, отфильтровав по уникальности. Скрин во вложении.
Использую запрос:

SELECT * FROM (SELECT * FROM `chat` ORDER BY `id` DESC LIMIT 20) AS select_result WHERE `nic`='$nic' GROUP BY `nic`, `admin`
UNION
SELECT * FROM (SELECT * FROM `chat` ORDER BY `id` DESC LIMIT 20) AS select_result2 WHERE `admin`='$nic' GROUP BY `nic`, `admin` ORDER BY `id` DESC

вместо $nic сейчас использую Рушнов 321, но вместо него будет любой другой показатель, подгружаемый с помощью php
Но остаются неуникальные (в моем случае) строки. Неуникальные пары подчеркнуты зеленым и красным. Другими словами: nic -> admin должен быть неравен admin -> nic. И какая из этих двух записей встречается последней - она должна отсекаться.
Грубо говоря, нужно отсечь 179 и 181 строку.
Статью про группировку в MySQL читал, очень познавательно))). но там используется один столбец, а у меня их два
Быть может у меня совсем не правильный запрос. Помогите, плиз

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson