Подобный вопрос this однако я хочу подсчитать, сколько разных отличных значений появляется для одного user_id. Если бы я имел следующую таблицу:Подсчитайте различные значения по нескольким столбцам
USER_ID DATA
123 abc
234 abc
123 def
456 def
123 abc
Я хочу следующие результаты:
USER_ID COUNT
123 2
234 1
456 1
Поскольку «123» имеет как «ABC» и «DEF» значения данных, где, как «234» и «456» имеет только одно значение данных.
В настоящее время у меня есть следующий псевдокод:
rows = SELECT DISTINCT user_id FROM table
for for in rows:
result = SELECT DISTINCT user_id, data FROM table WHERE user_id = <row>
if result.rowcount > 2:
doSomething()
Но это занимает много времени, поскольку он должен сделать вызов для каждого user_id.
Можно ли это сделать в одной команде MySQL?
Отлично, спасибо Майк. – DJDMorrison