Zählen Sie mehrere CASE-Vorkommen in SQL

8

Ich suche nach einer Lösung für das folgende Problem:

%Vor%

Werte sind etwas wie:

%Vor%

Ergebnis dieser Abfrage ist:

%Vor%

Dieser Code zählt erfolgreich Vorkommen, aber der CASE stoppt bei der ersten Übereinstimmung. Gibt es eine Möglichkeit, dies zu tun?

%Vor%     
Kadel 15.12.2016, 10:55
quelle

4 Antworten

4

In einem einzelnen case Ausdruck nein können Sie nicht genau erreichen, was Sie wollen, weil case bei der ersten Übereinstimmung stoppt.

Sie müssen separate case -Ausdrücke oder if() -Funktionsaufrufe haben, um das erwartete Ergebnis zu erzielen. Wenn es Ihnen nichts ausmacht, die Ergebnisse in verschiedenen Spalten zu haben, dann verwenden Sie bedingte Zählung:

%Vor%

Wenn Sie darauf bestehen, die Zählungen in derselben Spalte zu erhalten, verwenden Sie union :

%Vor%     
Shadow 15.12.2016, 11:04
quelle
4

Sie können UNION verwenden, wenn Sie in jeder Zeichenfolge mehr als 1 Vorkommen zählen möchten:

%Vor%     
sagi 15.12.2016 11:03
quelle
3
%Vor%     
quelle
1

versuche das:

%Vor%     
nimour pristou 15.12.2016 11:09
quelle

Tags und Links