Задать вопрос
@zevem
Стрелец

Как в mysql получить первые 20 строк по уникальному значению в столбце?

Есть таблица:
-------------------
id | product_id |
-------------------
1 | 111 |
-------------------
2 | 111 |
-------------------
3 | 112 |
-------------------
4 | 112 |
-------------------
5 | 112 |
-------------------
6 | 113 |
-------------------

Нужно получить строки для уникальных 20 товаров.
Т.е. строки с id 1 и 2 считается как один уникальный товар, соответствено 3,4,5 - это второй уникальный товар.

Задача получить строки для 20 уникальных товаров именно mysql запросом
  • Вопрос задан
  • 404 просмотра
Подписаться 1 Средний 5 комментариев
Пригласить эксперта
Ответы на вопрос 2
idShura
@idShura
select product_id from mytable group by product_id
Ответ написан
rozhnev
@rozhnev Куратор тега MySQL
Fullstack programmer, DBA, медленно, дорого
Ниже один из возможных способов:
select * 
from  myproducts 
  join (
	select distinct product_id 
	from myproducts 
	order by product_id 
	limit 20 -- количество уникальных товаров
  ) unique_products on unique_products.product_id = myproducts.product_id;


Здесь вы можете попробовать запрос SQL
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы