Встречаются ситуации когда необходимо сделать выборку не повторяющихся (уникальных) значений из како-нибудь таблицы. Например из таблицы посещений пользователей выбрать только уникальные id или из истории заказов интернет-магазина.
Есть, к-примеру, такая таблица.
Нужно получить все уникальные id_order.
Рассмотрим теперь, как выбрать и вывести записи таблиц MySQL с помощью ключевого слова DISTINCT (РАЗЛИЧНЫЙ), использование которого исключает появление повторяющихся данных.
Запрос выглядит так:
В результате будут такие данные:
1
2
3
4
5
6
7
8
9
10
11
И самая сложная выборка - выборка последних значений (с максимальным id) среди различных групп записей.
Допустим, есть таблица, в которой хранятся записи с такими полями: id, note_id, date.
id - уникальные. note_id - не уникальные, номер соответствует номеру страницы с записями, имеющими разные даты (поле date).
Задача - выбрать записи note с максимальным id и датой как условием.
Таким образом можно получить записи, содержащие только указанную дату в качестве условия.
Если убрать условие WHERE 'date' LIKE '%03.11.2014%', то можно получить просто самые последние записи.