Форум программистов, компьютерный форум, киберфорум
Наши страницы
Oracle
Войти
Регистрация
Восстановить пароль
 
Guessst
0 / 0 / 4
Регистрация: 06.02.2014
Сообщений: 27
#1

Вывести 3 наиболее встречающихся значения - Oracle

02.03.2014, 02:55. Просмотров 527. Ответов 2
Метки нет (Все метки)

Как дописать, чтобы вывело 3 значения vidacha_knig.id_kniga, которые встречаются больше остальных (например, чтобы из: 1 1 1 1 2 2 2 3 3 4 5 6 7 вывело 1 2 3), здесь выводит только одно максимальное значение:
SQL
1
2
3
4
5
6
7
SELECT vidacha_knig.id_kniga, name_knigi, COUNT(vidacha_knig.id_kniga)AS Kol_vo_vstrech
FROM katalog_alf INNER JOIN (knizh_fond INNER JOIN vidacha_knig 
ON knizh_fond.id_kniga = vidacha_knig.id_kniga) 
ON katalog_alf.bibl_kod_knigi = knizh_fond.bibl_kod_knigi 
GROUP BY vidacha_knig.id_kniga, name_knigi 
HAVING COUNT(vidacha_knig.id_kniga)>=ALL(SELECT COUNT(id_kniga) FROM vidacha_knig 
GROUP BY vidacha_knig.id_kniga)

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.03.2014, 02:55
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Вывести 3 наиболее встречающихся значения (Oracle):

Вывести цену и название 2-х наиболее продаваемых товаров
Остался последний заковыристый вопрос и не понятно как сделать его

Создать представление «количество заказов по производителям товаров». Вывести список товара наиболее «популярного» произ
Создать представление «количество заказов по производителям товаров». Вывести...

Вывести 10 наиболее часто встречающихся чисел
Нужно написать функцию, которая находит в векторе(видел с использованием map,...

Вывести 3 наиболее часто встречающихся в файле числа
Здравствуйте, застрял на задаче, несколько дней ломаю голову и не сргу найти...

Вывести таблицу с указанием трех наиболее часто встречающихся слов
Помогите пожалуйста! Написать программу, получающую строку текста и...

Дан непустой массив из цифр. Вывести на экран цифру наиболее часто встречающихся в этом массиве.
Доброго времени суток Помогите пжл с задачей Дан непустой массив из цифр....

2
Hagacure
26 / 26 / 9
Регистрация: 02.01.2011
Сообщений: 135
Записей в блоге: 1
02.03.2014, 03:16 #2
не сильно понял Ваш код, по-моему стоит решить задачу так:
SQL
1
SELECT SUM( vidacha_knig.id_kniga) FROM vidacha_knig GROUP BY vidacha_knig.id_kniga ORDER BY  1 DESC WHERE ROWNUM<4
1
Grossmeister
Модератор
3355 / 2413 / 402
Регистрация: 21.01.2011
Сообщений: 10,641
03.03.2014, 10:59 #3
Цитата Сообщение от Hagacure Посмотреть сообщение
не сильно понял Ваш код, по-моему стоит решить задачу так:
ROWNUM считается ДО ORDER BY, поэтому вместе их использовать нельзя, надо разносить по уровням
SQL
1
2
3
4
5
6
7
8
9
SELECT *
FROM
(
SELECT SUM( vidacha_knig.id_kniga) 
FROM vidacha_knig 
GROUP BY vidacha_knig.id_kniga 
ORDER BY  1 DESC 
)
WHERE ROWNUM<4
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.03.2014, 10:59
Привет! Вот еще темы с решениями:

20 наиболее часто встречающихся слов
дан файл. выписать 20 наиболее часто встречающихся слов в алфавитном порядке....

Получить 10 наиболее часто встречающихся слов
Дан символьный файл f, содержащий произвольный текст длиной более 50 слов....

WM 5 наиболее часто встречающихся первых букв
Здравствуйте. В рамках университетской дисциплины только начал изучать...

Поиск наиболее часто встречающихся слов
Помогите пожалуйста, нужно определить десятку наиболее часто встречающихся слов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru