Реже всего в SQL

Я сделал таблицу, которая содержит:

 sid| bid |date
 ---+-----+---------
 31 | 102 |2002-05-09
 31 | 103 |2002-05-09
 31 | 104 |2002-09-22
 22 | 101 |2002-10-10
 22 | 102 |2002-10-10
 22 | 103 |2003-01-10
 64 | 101 |2003-01-11
 64 | 102 |2003-01-11
 22 | 104 |2003-02-10
 74 | 103 |2003-02-12

Я хочу показать менее частый идентификатор, то есть 101 и 104. Я узнал, как делать наиболее частые, но как снимать наименее частые?

Что у вас есть чаще всего? Какая версия MySQL?

danblack 14.01.2019 06:29

@SanSolo, это не дублирование этой ссылки, потому что OP хочет два значения идентификатора 101 и 104 (а не только 1 строку путем сортировки и ограничения 1), которые поступают в функцию RANK() или DENSE_RANK() (в других dbms). У MySql есть обходной путь для этого.

Pham X. Bach 14.01.2019 07:55
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
В предыдущем посте мы создали функциональность вставки и чтения для нашей динамической СУБД. В этом посте мы собираемся реализовать функции обновления...
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
Роли и разрешения пользователей без пакета Laravel 9
Роли и разрешения пользователей без пакета Laravel 9
Этот пост изначально был опубликован на techsolutionstuff.com .
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
6
2
162
1

Ответы 1

Может быть, я смогу сделать что-нибудь более оптимизированное, но вот оно

CREATE TABLE work (sid int,bid int,`date` datetime);

INSERT INTO work (sid,bid,date)
VALUES
(31,102,'2002-05-09'),
(31,103,'2002-05-09'),
(31,104,'2002-09-22'),
(22,101,'2002-10-10'),
(22,102,'2002-10-10'),
(22,103,'2003-01-10'),
(64,101,'2003-01-11'),
(64,102,'2003-01-11'),
(22,104,'2003-02-10'),
(74,103,'2003-02-12');


SELECT @min :=MIN(nr) FROM 
(SELECT bid,count(*) as nr FROM work GROUP BY bid) a;

SELECT @min;


SELECT bid FROM (
SELECT bid,count(*) as nr FROM work GROUP BY bid HAVING count(*)=@min) a;

Другие вопросы по теме

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

INSERT INTO не ВСТАВЛЯЕТ никаких ДАННЫХ, несмотря на отсутствие ошибок в PHP, MYSQL
Этот код входа php всегда ничего не возвращает
Должен ли я использовать JSON или XML, если порядок свойств объекта, возвращаемого сервером, имеет значение?
Mysql пытается ранжировать строки по порядку
Вывод с группировкой и сортировкой mySql по
Cloud SQL: Python Client API по умолчанию использует набор символов utf8mb3 при импорте файла CSV
Laravel 5.7 + MySQL: несколько условий "где" в запросе. Индекс для каждого столбца "где" или один составной индекс, объединяющий все столбцы?
Вопрос для самообучения mysql, Как использовать 2 таблицы для создания 3-й таблицы, которая использует информацию из 2 исходных таблиц
Как исправить "Невозможно получить геометрический объект из данных, которые вы отправляете в поле GEOMETRY" при восстановлении резервной копии PHPMyAdmin?
MYSQL - вставить, если значение больше или меньше запаса