SELECT DISTINCT ...
Отфильтровать все повторяющиеся записи с результата запроса можно с помощью DISTINCT.
Пример использования:
Допустим у нас есть таблица «winners» с данными:
id | winner_name |
---|---|
1 | Nick |
2 | Ann |
3 | Ann |
4 | David |
5 | Nick |
6 | Nick |
7 | Natali |
Допустим нам нужно получить список всех уникальный имён победителей.
Выполнив следующий запрос, мы получим все неповторяющиеся имена:
SELECT DISTINCT winner_name FROM winners;
Результат запроса:
winner_name |
---|
Nick |
Ann |
David |
Natali |
ДЖЫГУРДА
Спасибо огромное, помогло!)
Спасибо большое
как в php сделать вывод данных?
Молодца, пригодилось!
Как я искал подобное решение. Огромное вам спасибо!
А как удалить неуникальные??
Спасибо большое!)
а еще можно использовать group by :
SELECT Filed FROM Table GROUP BY Field;
Спасибо!
А если нужен и столбец id? подходит любое из значений… например
id winner_name
1 Nick
2 Ann
4 David
5 Nick
7 Natali
как такой запрос может выглядеть?
Так же есть задача, похожая на предыдущую. Есть таблица с вопросами из разных тем для экзамена. Нужно выбрать по одному случайному вопросу из 2-х любых тем (например так).
id theme question
1 1 question1
2 1 question2
3 1 question3
4 2 question4
5 2 question5
6 3 question6
7 3 question7
Тут решение из составного запроса в котором случайно сортируются все вопросы и берутся только 2 различные темы и потом как сделать, чтобы вопросов было по одному… Если кто знает — помогите, пожалуйста
Спасибо, помог!
Спасибо! То что нужно!
Добрый день!
А если запрос из нескольких таблиц (например в итоге 5 столбцов) и надо оставить только уникальные значения по одному из столбцов?.
SELECT Company.Name, Company.id, sender, doctype, _date
from dochead
join settings on settings.id = dochead.sender
join Company on settings.Company = Company.ID
where Receiver in (1)
order by _date desc
______________
В результате выводится список отправитель, id, тип документа, дата.
Но показывает повторяющихся отправителей, а нужен только последний документ каждого отправителя для заданного получателя (Receiver in (1))