Intereting Posts
Android с SQL Server 2008 Удаление дубликатов из SQL-запроса (а не только «использование отдельных») Нормализация базы данных: как я могу суммировать данные? Выберите случайную запись из группы после группировки по значению (не столбцу)? Каковы допустимые имена таблиц в SQLite? сложный запрос занимает слишком много времени. OAuth, OAuthConfig и скрипт Google Apps (API таблицы Fusion – проблемы с вставкой SQL) Хотя цикл в SQL Server 2008 повторяется через диапазон дат, а затем INSERT Запуск Oracle SQL Trigger при имплементации SQL-запросы внутри предложения IN () Как получить эксклюзивную блокировку базы данных firebird для выполнения изменений схемы? ORA-01830: формат формата даты Имеет ли Oracle 12 проблемы с локальными типами коллекций в SQL? Получить последний ребенок на одного родителя из большой таблицы – запрос слишком медленный Ошибка: информация об ошибке приложения при удаленном просмотре

Режим TSQL (как в среднем, медианном, режиме)

Я пытаюсь рассчитать режим серии idsofInterest в таблице, каждый сопутствующий valueOfInterest, такой как:

idsOfInterest | valueOfInterest 2 | 1A 2 | 1A 2 | 3B 1 | 2A 1 | 2C 1 | 2A 4 | 3B 4 | 3B 4 | 4C 

но с миллионами строк.
Каждый список idOfInterest достаточно длинный, что многомодовые задачи не являются проблемой. В идеале мне хотелось бы что-то вроде

 idsOfInterest | modeValueOfInterest 1 | 2A 2 | 1A 3 | 3C 4 | 3B 

Любая помощь оценивается. (Использование MS SQL Server 2008)

Этот режим является наиболее распространенным. Вы можете получить это с помощью агрегации и row_number() :

 select idsOfInterest, valueOfInterest from (select idsOfInterest, valueOfInterest, count(*) as cnt, row_number() over (partition by idsOfInterest order by count(*) desc) as seqnum from table t group by idsOfInterest, valueOfInterest ) t where seqnum = 1;