С Новым годом! Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.51/55: Рейтинг темы: голосов - 55, средняя оценка - 4.51
0 / 0 / 0
Регистрация: 01.11.2019
Сообщений: 49

Самый популярный автор за год

14.04.2020, 23:16. Показов 10252. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите написать запрос который возвращает самого популярного автора за год
Таблицы:
BOOKS (столбцы (BOOK, FIO_AUTOR))
PUBLISHING (столбцы (NAME_PUBLISHING, BOOK, YEAR_PUBLISHING))
LIBRARY (столбцы (BOOK, NUMBER_COPIES, FIO_STUDENT, DATE_ISSUE, DATE_RETURN))

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

SQL
1
2
3
SELECT TOP 1 FIO_AUTOR
FROM BOOKS, LIBRARY
WHERE DATE_ISSUE BETWEEN '16.04.2019' AND '15.04.2020'
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.04.2020, 23:16
Ответы с готовыми решениями:

Опишите, используя структуру записи, книги(автор,название,год издания).Составьте программу вывода на экран упорядоченного списка книг(по фамилии автор
Опишите, используя структуру записи, книги(автор,название,год издания).Составьте программу вывода на экран упорядоченного списка книг(по...

Самый популярный элемент в многомерном списке
Помогите Нужно вывести элемент, который встречается чаще всего в многомерном массиве. def Moda(b): m, i = 0, 0 #... ...

Самый популярный язык программирования - java.
Вот собственно ссылка - http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html Но ведь язык c++ лучше и удобнее! Как же так?

16
5953 / 4529 / 1094
Регистрация: 29.08.2013
Сообщений: 28,121
Записей в блоге: 3
14.04.2020, 23:44
Цитата Сообщение от Daninil Посмотреть сообщение
FROM BOOKS, LIBRARY
таблицы не связаны

Цитата Сообщение от Daninil Посмотреть сообщение
Сделал пока так
без сортировки top 1 выберет просто 1 строку

а стоит задать обратную сортировку и ..
0
0 / 0 / 0
Регистрация: 01.11.2019
Сообщений: 49
15.04.2020, 01:57  [ТС]
таблицы не связаны
в WHERE добавить BOOKS.BOOK = LIBRARY.BOOK ?


без сортировки top 1 выберет просто 1 строку

а стоит задать обратную сортировку и ..
как это реализовать?
0
1721 / 1490 / 165
Регистрация: 25.07.2015
Сообщений: 2,589
15.04.2020, 08:52
Цитата Сообщение от Daninil Посмотреть сообщение
как это реализовать?
SQL
1
ORDER BY FIO_AUTOR DESC
после WHERE
Цитата Сообщение от Daninil Посмотреть сообщение
в WHERE добавить BOOKS.BOOK = LIBRARY.BOOK ?
нет , связать таблицы через JOIN
0
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
15.04.2020, 11:13
Kulma,
SQL
1
SELECT * FROM BOOKS, LIBRARY WHERE BOOKS.BOOK = LIBRARY.BOOK
если это ключи таблиц, то этот запрос аналогичен join.
0
0 / 0 / 0
Регистрация: 01.11.2019
Сообщений: 49
15.04.2020, 15:36  [ТС]
а какой смысл от обратной сортировки?
она ведь выведет последнего автора по его фамилии, а не по его популярности
0
5953 / 4529 / 1094
Регистрация: 29.08.2013
Сообщений: 28,121
Записей в блоге: 3
15.04.2020, 15:41
ты же делаешь TOP 1
он выбирает первую строку

если не делать DESC в сортировке, то ты получишь самого НЕ популярного автора, потому что САМЫЙ популярный внизу
0
0 / 0 / 0
Регистрация: 01.11.2019
Сообщений: 49
15.04.2020, 15:58  [ТС]
Но запрос ведь пока не выводит самого популярного, это нужно какое-то условие добавить. Этого как раз не хватает и я не понимаю как реализовать, на данный момент он будет сортировать авторов по их фамилии.
0
5953 / 4529 / 1094
Регистрация: 29.08.2013
Сообщений: 28,121
Записей в блоге: 3
15.04.2020, 16:07
Цитата Сообщение от Daninil Посмотреть сообщение
это нужно какое-то условие добавить
так это ты должен сказать как ты надо считать самого популярного автора

по книгам, по публикациям, по студентам
таблицы то есть, а расшифровки нет.. как тут угадать?
0
0 / 0 / 0
Регистрация: 01.11.2019
Сообщений: 49
15.04.2020, 16:08  [ТС]
по дате выдчи "DATE_ISSUE", то есть того автора, чьи книги чаще всего берут студенты
0
5953 / 4529 / 1094
Регистрация: 29.08.2013
Сообщений: 28,121
Записей в блоге: 3
15.04.2020, 16:11
по дате выдачи?
ну и кто тебе мешает сделать подтаблицу - книга, количество(дата выдачи)

дальше получаешь по книге ID автора, группируешь и получаешь самого популярного
0
0 / 0 / 0
Регистрация: 01.11.2019
Сообщений: 49
15.04.2020, 16:22  [ТС]
подтаблица создается внутри запроса?
0
5953 / 4529 / 1094
Регистрация: 29.08.2013
Сообщений: 28,121
Записей в блоге: 3
15.04.2020, 16:25
SQL
1
2
SELECT *
FROM (SELECT a,b,c FROM T) t
как то так
0
0 / 0 / 0
Регистрация: 01.11.2019
Сообщений: 49
15.04.2020, 18:00  [ТС]
SQL
1
2
3
4
5
6
7
SELECT TOP 1 FIO_AUTOR
FROM BOOKS
JOIN LIBRARY ON BOOKS.BOOK=LIBRARY.BOOK
WHERE DATE_ISSUE BETWEEN '16.04.2019' AND '15.04.2020' 
GROUP BY FIO_AUTOR
HAVING COUNT(DATE_ISSUE)=MAX(COUNT(DATE_ISSUE))
ORDER BY FIO_AUTOR
пробую вот так, единственная проблема в HAVING, как можно реализовать подобное условие?
0
5953 / 4529 / 1094
Регистрация: 29.08.2013
Сообщений: 28,121
Записей в блоге: 3
15.04.2020, 19:45
вот сюда
MAX(COUNT(DATE_ISSUE))
вставь полноценный запрос (select *)
0
0 / 0 / 0
Регистрация: 01.11.2019
Сообщений: 49
16.04.2020, 02:46  [ТС]
что в этом запросе искать?

Добавлено через 5 часов 54 минуты
SQL
1
MAX((SELECT COUNT(DATE_ISSUE)))
так?
0
3614 / 2135 / 756
Регистрация: 02.06.2013
Сообщений: 5,169
16.04.2020, 10:19
Лучший ответ Сообщение было отмечено Daninil как решение

Решение

T-SQL
1
2
3
4
5
6
7
SELECT TOP (1) with ties
 FIO_AUTOR
FROM BOOKS
JOIN LIBRARY ON BOOKS.BOOK=LIBRARY.BOOK
WHERE DATE_ISSUE BETWEEN '16.04.2019' AND '15.04.2020' 
GROUP BY FIO_AUTOR
ORDER BY count(*) desc
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.04.2020, 10:19
Помогаю со студенческими работами здесь

Какой МК из STM32 сейчас самый популярный в РФ?
По слухам, отзывам, обзорам, складам-продажам, инсайдам и личным интуитивным ощущениям ? ) Я сам всегда считал, что F103, но сейчас...

Самый популярный язык программирования на сегодняшний день
Решил создать новую тему на основе этой и этой темы. В течение недели выбираем самый популярный язык программирования. Можно дать...

Какой самый популярный фреймворк на C# для unit-тестов
Привет! Какой самый популярный фреймворк на C# для юнит-тестов?

Определить самый урожайный и самый неурожайный год в колхозе “Заря”
Нужно написать код к этой задаче: В массиве Urogai(20) хранится урожайность (в центнерах с гектара) пщеницы в колхозе “Заря” с 1970 по...

Отсортировать строки по фамилии в алфавитном порядке и вывести самый популярный возраст
Здравствуйте. Уже неделю не могу решить эту задачу, проблема в том что нельзя использовать string и структуры, нужно решить через...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru