Я использую СУММУ (СЛУЧАЙ КОГДА) для подсчета количества Да и Нет, все работает нормально.
У меня проблема с подсчетом номера мобильного телефона из двух таблиц. Кажется, он не считает правильно.
Существует поле MobileNO
в таблице молочных продуктов и поле mobile
в таблице продаж
SELECT
D.Username,
SUM(CASE WHEN D.type = 'Yes' THEN 1 ELSE 0 END) as Yes,
SUM(CASE WHEN D.type = 'No' THEN 1 ELSE 0 END) as No,
SUM(CASE WHEN D.type = '' THEN 1 ELSE 0 END) as Other,
(SELECT SUM(CASE WHEN D.MobileNo = S.mobile THEN 1 ELSE 0 END) from sales as S) as Sales,
COUNT(*) as TOTAL FROM dairy as D
WHERE source = 'Company' AND UNIX_TIMESTAMP(CheckDate) >= 1293840000 AND UNIX_TIMESTAMP(CheckDate) <= 1322697600
group by D.Username order by TOTAL DESC