Продукты сгруппированы для проверки и пропуска/сбой примерно на 20 критериях. Им нужен отчет, в котором указано, сколько из каждого дефекта принадлежит отдельной группе.несколько столбцов GROUP BY в одну колонку
Дефект * является varchar (3) и используется для определения того, какие критерии не удались.
таблица имеет 3 колонки на наличие дефектов, и я могу вернуть их с чем-то вроде:
SELECT GroupID,
Defect1, COUNT(Defect1) as Occ1,
Defect2, COUNT(Defect2) as Occ2,
Defect3, COUNT(Defect3) as Occ3
FROM Product
WHERE Run = 1728 AND Defect1 IS NOT NULL
GROUP BY GroupID, Defect1, Defect2, Defect3
ORDER BY GroupID
, который дает выход как:
GroupID Def1 Occ1 Def2 Occ2 Def3 Occ3
RF-061 CPP 1 FPV 1 null 0
RF-061 FPV 1 CPP 1 null 0
RF-061 HCR 1 CHP 1 null 0
RF-061 CHP 1 FPV 1 null 0
RF-061 FBL 1 HCR 1 FPT 1
RF-061 CHP 1 CPP 1 HCR 1
RF-061 CHP 1 CPP 1 null 0
RF-061 CPP 1 FBL 1 null 0
...
Желаемая выход:
GrPupID Def Occurrences
BF-061 FPV 4
BF-061 CPP 5
BF-061 CHP 5
BF-061 HCR 5
BF-061 FBL 3
BF-061 PPC 1
BF-061 FPT 1
на SQL Server 7, да, я знаю.
Спасибо, это именно то, что я искал. – 182764125216