Division in sqlite gibt einen ganzzahligen Wert zurück
sqlite> select totalUsers/totalBids from
(select (select count(*) from Bids) as totalBids ,
(select count(*) from Users) as totalUsers) A;
1
Können wir das Ergebnis typisieren, um den tatsächlichen Wert des Divisionsergebnisses zu erhalten?
In Sqlite wird die Division einer Ganzzahl durch eine andere Ganzzahl immer auf die nächste Ganzzahl abgerundet.
Wenn Sie also Ihren Enumerator in einen Float umwandeln:
SELECT CAST(field1 AS FLOAT) / field2
quelle
select cast ( ( select 1 ) as real );
https://www.sqlite.org/lang_expr.html#castexpr
quelle
oder wenn Sie die Spalte basierend auf der Textspalte aktualisieren möchten:
UPDATE table_with_fields SET real_field=cast(field_with_txt AS real)
quelle