В настоящее время я работаю над запросом, который покажет мне общее количество полученных приложений и количество тех из них, которые соответствуют определенному статусу приложения. Затем он будет сгруппирован по статусу и клиенту. Смотрите ниже:Проблема с подсчетом подсчета итогов
SELECT STATE AS State1, CLIENT AS Client1, COUNT(DISTINCT ID) AS Count1,
(SELECT COUNT(DISTINCT APPLICATION_ID)
FROM APPLICATION TABLE 1
LEFT JOIN APPLICATION TABLE 2 ON ID1 = ID2
WHERE STATUS = 'APPROVED'
AND DATE_FORMAT(CREATE_DT, '%Y-%m-%d') = '2013-03-28') AS COUNT2
FROM APPLICATION TABLE
JOIN USER TABLE ON USER_ID = ID
LEFT JOIN DECISION TABLE ON DECISITON_ID = ID
WHERE DATE_FORMAT(CREATE_DT, '%Y-%m-%d') = '2013-03-28'
GROUP BY STATE, CLIENT;
Выходной сигнал будет что-то вроде ниже:
State Client App Count Approved Count
AL Client 1 2 1
AL Client 2 4 3
AL Client 3 10 2
TX Client 1 9 6
TX Client 4 4 3
KS Client 6 6 4
KS Client 9 12 10
Однако, я получаю следующее:
State Client App Count Approved Count
AL Client 1 2 29
AL Client 2 4 29
AL Client 3 10 29
TX Client 1 9 29
TX Client 4 4 29
KS Client 6 6 29
KS Client 9 12 29
Что я могу сделать, чтобы подвести вторичный подсчет приложения в этом конкретном состоянии правильно?
Если вам нравится, рассмотрите следующий простой двухэтапный курс действий: 1. Если вы еще этого не сделали, укажите надлежащие DDL (и/или sqlfiddle), чтобы мы могли легче реплицировать проблему. 2. Если вы еще этого не сделали, укажите желаемый набор результатов, соответствующий информации, представленной на шаге 1. – Strawberry