Вроде ничё трудного, но...
admin_id и bug_id могут повторятся скоко угодно раз (то есть они не уникальные и их пара тоже не уникальная)
Так вот. Мне нужно одним запросом (повторяю одним, без создания темпорари тейбла) вытащить admin_id и количество уникальных багов этого админа.
Так вот. Мне нужно одним запросом (повторяю одним, без создания темпорари тейбла) вытащить admin_id и количество уникальных багов этого админа.
SELECT DISTINCT
упс. Не увидел слова количество
А что, SELECT DISTINCT COUNT не сработает?
(лениво сейчас проверять)
Допустим у меня есть табличка table (admin_id,bug_id,date)
admin_id и bug_id могут повторятся скоко угодно раз (то есть они не уникальные и их пара тоже не уникальная)
Так вот. Мне нужно одним запросом (повторяю одним, без создания темпорари тейбла) вытащить admin_id и количество уникальных багов этого админа.
SELECT admin_id, COUNT(bug_id) FROM table GROUP BY admin_id
SELECT admin_id, COUNT(bug_id) FROM table GROUP BY admin_id
Этот запрос вытащит количество всех багов, которые возникали у админа, а мне надо узнать количество уникальных багов.
Этот запрос вытащит количество всех багов, которые возникали у админа, а мне надо узнать количество уникальных багов.
что значит уникальных? т.е. где баги только у этого админа?
что значит уникальных? т.е. где баги только у этого админа?
Допустим, в базе у нас есть такие записи
admin_id bug_id
1 2
1 3
1 1
1 2
1 3
2 1
2 1
2 2
тогда для первого админа будет 3 уникальных бага, а для второго - 2
Допустим, в базе у нас есть такие записи
admin_id bug_id
1 2
1 3
1 1
1 2
1 3
2 1
2 1
2 2
тогда для первого админа будет 3 уникальных бага, а для второго - 2
SELECT admin_id, COUNT(bug_id) FROM table GROUP BY bug_id, admin_id ORDER BY admin_id
SELECT admin_id, COUNT(bug_id) FROM table GROUP BY bug_id, admin_id ORDER BY admin_id
Неа) такой вариант я уже пробывал!
Неа) такой вариант я уже пробывал!
и что же в нем не так?
и что же в нем не так?
Он не работает так, как надо. Вот что в нем не так)
Он не работает так, как надо. Вот что в нем не так)
SELECT admin_id, COUNT(DISTINCT bug_id) FROM ssss GROUP BY (admin_id)
SELECT admin_id, COUNT(DISTINCT bug_id) FROM ssss GROUP BY (admin_id)
Прикольно. Большое пасибо!