У меня есть запрос, в котором конечный пользователь хотел бы получить общее количество дозаторов в определенном месте - даже если они уже сгруппированы по местоположению и общее количество дозаторов можно увидеть, ему все еще нужен этот столбец Count.
Вот запрос, который суммирует общее количество галлонов, распределенных каждой машиной в определенном месте -
SELECT nt.COSTCENTER AS "CostCtr",
s.DAD AS "D.A.D.",
s.DIVISION AS "Division",
nt.DISPENSER AS "Model Name",
nt.SERIALNBR AS "Serial",
nt.CLRNTSYS AS "Sys",
SUM (CASE WHEN nt.CLRNTSYS ='CCE' THEN nt.GALLONS ELSE 0 END) AS "CCE gals",
SUM (CASE WHEN nt.CLRNTSYS ='BAC' THEN nt.GALLONS ELSE 0 END) AS "BAC gals"
FROM TableNT nt
JOIN TableSTORE s ON nt.COSTCENTER = s.COSTCENTER
WHERE nt.BOOKDATE >= '01-JAN-18' AND nt.BOOKDATE <= '31-AUG-18'
AND nt.CLRNTSYS IN ('CCE','BAC')
AND nt.TRANCODE = 'DISP'
AND nt.DISPENSER <> 'BYHAND'
GROUP BY nt.COSTCENTER, nt.DISPENSER, nt.TINTERSERIALNBR, nt.CLRNTSYS, s.DAD, s.DIVISION
ORDER BY nt.COSTCENTER, nt.DISPENSER;
В большинстве мест есть только один дозатор. У некоторых есть два, три или четыре. Если я сделаю COUNT (DISTINCT nt.DISPENSER), это будет просто возвращать «1» каждый раз, потому что каждая запись на дозатор. Есть ли способ для меня, чтобы положить общее количество дозаторов на место? то есть, если в локации есть три дозатора, запись для каждого дозатора в этом месте будет иметь «3» в столбце «Количество дозаторов»? Таким образом, если они просматривают только одну конкретную запись об одном дозаторе в определенном месте, они будут знать общее количество дозаторов, доступных в этом месте (если это имеет смысл)?
ADDENDUM - Вот пример того, что я мог бы получить для результатов, с количеством диспенсеров в каждом МВЗ в конце. Надеюсь, что это проясняет.
CostCtr|D.A.D. |Division|Model Name|Serial |Sys|CCE Gals|BAC Gals|Num Of Dsps
701003 01-06-02 01 IFC 8112NP ABCDE CCE 37616.75 0 1
701004 02-08-25 02 IFC 7012NP 12345 BAC 0 1164.75 2
701004 02-08-25 02 IFC 8112NP DEFGH CCE 41843 0 2
701005 01-03-38 01 IFC 411XN 67890 CCE 24847.75 0 1
701006 01-06-02 01 IFC 411XN IJKHL CCE 50511.5 0 3
701006 01-06-02 01 CB 800CE 23456 BAC 20 0 3
701006 01-06-02 01 CB 2000 MNOPQ CCE 110 0 3