2016-07-26 6 views
-1

Ich versuche eine einfache Auswahl zu treffen, wo die zurückgegebenen Zeilen nach dem Ergebnis eines Split-Count-Ergebnisses geordnet sind.Sqlite: Wie man eine Spalte nach Trennzeichen aufteilt und nach Trennergebnis sortiert, ohne Duplikate auszuschließen

Tabelle Beispiel:

enter image description here

Nach dem Bild, bei einer ansteigenden Reihenfolge, wäre es etwas, wenn ich zu Spaltung durch Komma und Ordnung durch Zählergebnis dieser Spaltung war gehen wie folgt aus:

T1, T2, T3

T1, T2

T1

T3

T2

Dies ist, was ich versucht habe

Abfrage:

Select SomeCol FROM Table GROUP BY SomeCol Order BY Count(instr(SomeCol, ',')) ASC 

Dies funktioniert wenn es keine Doppelzüngigkeit gibt, aber das muss funktionieren, wenn es Doppelzüngigkeit gibt. Dies sollte in der Lage sein, doppelte Zeilen anzuzeigen, die nach der Aufteilungsanzahl geordnet sind.

Viele Dank im fortgeschrittenen

+0

Warum wurde dies abgelehnt? – Jcorretjer

+0

Was passiert, wenn Sie die Gruppe durch –

+0

entfernen Ich bekomme diesen Fehler 'Missbrauch von Aggregat: count()' – Jcorretjer

Antwort

1

einige ähnlichen Lösungen Lesen und kam mit einem bis auf der Grundlage der, die ich gelesen.

Select SomeCol FROM Table Order BY length(replace(SomeCol , ',', '')) ASC 
Verwandte Themen