2 СЧЕТА в одном операторе SQL с различными условиями (MYSQL)

Я искал способ сделать это, но всегда есть что-то не так с предоставленной помощью. (MYSQL не принимается, у меня больше условий, чем у человека, задающего вопрос и т. Д.)

Я хочу иметь возможность рассчитывать на 2 вещи для сотрудников. У меня есть 3 разных условия. Как это могло быть сделано ??

Код COUNT ниже настолько неправильный, но он должен дать представление о том, что я хочу, чтобы он делал. Я вывожу 2 строки, поэтому мне нужно, чтобы они имели разные имена.

К вашему сведению: (это работает с одним счетом)

Спасибо

SELECT employees.employees_ID,
employees.name,
employees.country_count_ID,
employees.department_ID,
employees.initials,
country.country_initials,

COUNT(distinct clients.retailer_ID when clients.progress_ID = 6) as aRows,
COUNT(distinct case when clients.progress_ID = 7) as bRows

FROM employees

LEFT OUTER JOIN clients ON employees.employees_ID = clients.sales_employees_ID
LEFT OUTER JOIN country ON employees.country_count_ID = country.count_ID

WHERE employees.department_ID = 1

GROUP BY employees.employees_ID,
employees.name,
employees.country_count_ID,
employees.department_ID,
employees.initials,
country.country_initials

1

Решение

Ты можешь использовать case с count(distinct):

COUNT(distinct case when clients.progress_ID = 6 then clients.retailer_ID  end) as aRows,
COUNT(distinct case when clients.progress_ID = 7 then clients.retailer_ID  end) as bRows,
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]