MySQL में, इसे व्यक्त करने का शायद सबसे आसान तरीका एक अस्थायी तालिका का उपयोग करना है:
create temporary table temp as (
id int not null auto_increment,
CaseLabel varchar(255),
CasesResolved int
);
insert into temp(CaseLabel, CasesResolved)
SELECT deskcases.Labels, COUNT(deskcases.Labels)AS CaseCount
FROM deskcases
WHERE deskcases.Labels NOT LIKE ''
AND deskcases.Labels NOT LIKE '%SPAM%'
AND deskcases.Labels NOT LIKE '%Online Orders%'
AND deskcases.Labels NOT LIKE '%Internal SPAM%'
AND deskcases.`Case Status` LIKE 'Resolved'
AND deskcases.`Resolved At` > CURDATE()- INTERVAL 7 DAY
GROUP BY deskcases.Labels
ORDER BY CaseCount DESC;
select (case when id <= 5 then caselabel else 'Other' end),
SUM(casesResolved) as CasesResolved
from temp
group by (case when id <= 5 then caselabel else 'Other' end)
order by MAX(id) desc
id
अस्थायी तालिका में कॉलम प्रत्येक पंक्ति पर एक पंक्ति संख्या जोड़ता है। किसी अन्य वास्तविक डेटाबेस में, आप row_number()
. का उपयोग करेंगे फ़ंक्शन, लेकिन MySQL इसका समर्थन नहीं करता है।