2016-03-24 19 views
0

Es gibt viele Werte in einer Spalte wie Beispiel für Stationery-Tabelle. Ich hätte gerne die Zählung von Bleistift, Stift, Notizbuch usw. Ich kann dies sehr einfach mit DECODE erreichen. Allerdings, wenn ich den Bleistift, den Stift und das Notizbuch ausschließen und den Rest in einer gemeinsamen Gruppe "Andere" zählen möchte. Wie können wir das machen?Gruppe durch Ausschließen einiger Werte einer Spalte

+0

Könnten Sie bitte einige Beispieldaten veröffentlichen, die Abfrage, die Sie nutzen und das gewünschte Ergebnis? – Aleksej

Antwort

1

die Spaltennamen sind ITEM Unter der Annahme, und die Tabelle STATIONERY und die Spalten Elemente, die Sie nennen sind speziell Pencil, Pen und Notebook dann versuchen, benannt ist:

SELECT CASE item 
     WHEN 'Pencil' THEN 'Pencil' 
     WHEN 'Pen' THEN 'Pen' 
     WHEN 'Notebook' THEN 'Notebook' 
     ELSE 'Others' 
     END AS item_type, 
     count(*) 
    FROM stationery 
GROUP BY CASE item 
      WHEN 'Pencil' THEN 'Pencil' 
      WHEN 'Pen' THEN 'Pen' 
      WHEN 'Notebook' THEN 'Notebook' 
      ELSE 'Others' 
      END; 
+0

Danke, aber ich brauche die Zählung davon. – SandyX

+0

Anzahl von was? Was ich dir gegeben habe, sollte die Anzahl angeben (das ist es, was der COUNT (*) tut). – Ollie

+0

Es hat funktioniert, es war eine ausgezeichnete Lösung. – SandyX

Verwandte Themen