2017-02-02 2 views
-1

МОЯ ТаблицаSQL Count по столбцам

enter image description here

Учитывая только желтые линии ..

У меня есть выход следующим образом:

enter image description here

Как я могу преобразовать это :

enter image description here

Мой запрос:

SELECT COUNT(DISTINCT(SONG_ID)) AS PLAY_COUNT, 
     CLIENT_ID AS CLIENT_ID 
    FROM `mytable` 
WHERE PLAY_TS LIKE '%10/08/2016%' 
GROUP 
    BY CLIENT_ID; 
+0

Нет фотографий, спасибо. См. Http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-a-very-simple-sql-query – Strawberry

+0

И хранить даты, используя дату, тип данных – Strawberry

+0

Да, я знаю. Это просто сухой пробег. – nuhkoca

ответ

1
SELECT ot.PLAY_COUNT, COUNT(ot.CLIENT_ID) AS CLIENT_COUNT 
    FROM (SELECT 
      COUNT(DISTINCT(mt.SONG_ID)) AS PLAY_COUNT, 
      mt.CLIENT_ID 
     FROM `mytable` AS mt 
     WHERE mt.PLAY_TS LIKE '%10/08/2016%' 
     GROUP BY mt.CLIENT_ID) AS ot 
    GROUP BY ot.PLAY_COUNT; 
+0

Привет, Спасибо за продолжение. Я обновил свой вопрос. Не могли бы вы взглянуть на него за лучший ответ? – nuhkoca

+0

Здравствуйте, я обновил свой ответ. Я думаю, он будет работать так, как вы хотите. Благодарю. – mainuljs

+0

Я забыл о вашем месте. Пожалуйста, смотрите сейчас. Благодарю. – mainuljs

0

Просто оберните свой запрос в другой запрос:

select play_count as distinct_play_count, count(*) as client_count 
from (your_first_query) s1 
group by play_count 
+0

Привет, Спасибо за продолжение. Я обновил свой вопрос. Не могли бы вы взглянуть на него за лучший ответ? – nuhkoca

0

Вы должны дать нам больше информации, но вы можете сделать что-то вроде этого:

SELECT play_count, client_count FROM table 
GROUP BY play_count 

Но снова вы лучше улучшите детали своего вопроса.

+0

Спасибо за ответ. Я поделился своим запросом. Пожалуйста, смотрите. Благодарю. – nuhkoca

0
SELECT PLAY_COUNT, COUNT(CLIENT_ID) AS CLIENT_COUNT 
FROM Table_Name 
GROUP BY PLAY_COUNT 
+0

Привет, Спасибо за продолжение. Я обновил свой вопрос. Не могли бы вы взглянуть на него за лучший ответ? – nuhkoca

+0

Добро пожаловать в переполнение стека! Хотя вы, возможно, решили проблему этого пользователя, ответы на код не очень помогают пользователям, которые приходят к этому вопросу в будущем. Измените свой ответ, чтобы объяснить, почему ваш код решает исходную проблему. –

0
SELECT DISTINCT PLAY_COUNT AS DISTINCT_PLAY_COUNT, COUNT(CLIENT_ID) AS CLIENT_COUNT 

FROM Table 

GROUP BY PLAY_COUNT HAVING COUNT(CLIENT_ID) > 0 
+0

Привет, Спасибо за продолжение. Я обновил свой вопрос. Не могли бы вы взглянуть на него за лучший ответ? – nuhkoca

Смежные вопросы