6
ich die folgende Abfrage in SQLite haben:Vergleichen Strings als Zahlen in SQLite3
SELECT * FROM t1 ORDER BY t1.field
Wo t1.field
eine Textspalte ist Zahlen enthält. Ist es möglich, SQLite zu zwingen, die Werte von t1.field als Zahlen anstelle von Strings zu betrachten (ohne ALTER TABLE
)? Im Moment ist die Sortierung eine reine Zeichenfolge, also 10 geht vor 2.
Vielen Dank.
zur Nummer danke diese mir geholfen, aus Interesse, auf welcher Plattform wurden Sie SQLite auf? –
SELECT * FROM t1 ORDER VON CAST (t1.field AS INTEGER) –
Sie können sogar gemischte Daten sortieren. Wenn Sie 'ORDER BY t1.field + 0, t1.field' verwenden, sortiert das zuerst alle Zahlen, dann alle Zeichenfolgen, die nicht in eine Zahl umgewandelt werden konnten ->' ["no", "yes", "1", "5", "10", 50 "]' – relet