Я пытаюсь запустить этот запрос;SQL - Ограничить количество результатов в группе по
SELECT artist, song, track, album, album_id, art, COUNT(artist) AS artistCount FROM listening_artist GROUP BY artist ORDER BY COUNT(artist) DESC
Это хорошо работает, но я бы хотел, чтобы он работал только из 30 результатов из базы данных, а не из полной базы данных.
я попробовал эту
SELECT artist, song, track, album, album_id, art, COUNT(artist) AS artistCount FROM listening_artist LIMIT 30 GROUP BY artist ORDER BY COUNT(artist) DESC
Который ничего не возвращает.
Я не после этого
SELECT artist, song, track, album, album_id, art, COUNT(artist) AS artistCount FROM listening_artist GROUP BY artist LIMIT 30 ORDER BY COUNT(artist) DESC
Как было бы слишком поздно для предела.
Что это за
Это, чтобы выбрать пользователя наиболее выслушали художника из в их последних 30 сыгранных песен.
Моя база данных
+------------+----------+---------+---------+------------+-------+
| artist | song | track | album | album_id | art |
+------------+----------+---------+---------+------------+-------+
| T-Swift | 22 | *NULL* | Red | 9282781 | URL |
| | | | | | |
+------------+----------+---------+---------+------------+-------+
Любая помощь приветствуется. Благодаря!
Ваш «ничего не возвращает» - это синтаксическая ошибка, которая предполагает, что в вашем коде нет обработки ошибок, чтобы обнаружить, когда запрос взорвался. Прочтите синтаксис: [select] (http://dev.mysql.com/doc/refman/5.7/en/select.html) –
Примените предел в производной таблице (подзапрос) и узнайте, как форматировать Select-statement , – dnoeth
Зачем вам нужен «GROUP BY». Это похоже на ошибку или неопределенное поведение. – Michas