ich eine SQLite db haben, sieht wie folgt aus:SQLite - Wählen Sie Reihen von verschiedenen Kombinationen von Spalten
- alle Spalten
- die Anzahl der:
id | num1 | num2 | value ---|------|------|------ 1 | 2 | 1 | "foo" 2 | 1 | 1 | "foo" 3 | 2 | 4 | "foo" 4 | 2 | 3 | "foo" 5 | 1 | 1 | "foo" 6 | 1 | 1 | "foo" 7 | 1 | 3 | "foo" 8 | 1 | 2 | "foo"
ich folgendes auswählen müssen verschiedene Kombinationen von
num1
undnum2
- die
num1
/num2
Kombinationen Rangliste d vonnum1
und dannnum2
Die resultierende Tabelle sollte wie folgt aussehen:
id | num1 | num2 | value | num | rank
---|------|------|-------|-----|-----
1 | 2 | 1 | "foo" | 6 | 4
2 | 1 | 1 | "foo" | 6 | 1
3 | 2 | 4 | "foo" | 6 | 6
4 | 2 | 3 | "foo" | 6 | 5
5 | 1 | 1 | "foo" | 6 | 1
6 | 1 | 1 | "foo" | 6 | 1
7 | 1 | 3 | "foo" | 6 | 3
8 | 1 | 2 | "foo" | 6 | 2
Ich versuchte fiddeling um mit vielen verschiedenen Unterabfragen, aber nicht alles in der Nähe zu einem brauchbaren Ergebnis.
EDIT: Ich schaffte es, die Anzahl der Kombinationen zu erhalten (so Spalte num
) mithilfe der folgenden Abfrage:
SELECT
*,
(
SELECT count (*)
FROM (SELECT DISTINCT num1, num2
FROM table)
)
AS num
FROM table;