División en sqlite devuelve valor entero
sqlite> select totalUsers/totalBids from
(select (select count(*) from Bids) as totalBids ,
(select count(*) from Users) as totalUsers) A;
1
¿Podemos encasillar el resultado para obtener el valor real del resultado de la división?
En Sqlite, la división de un número entero por otro entero siempre se redondeará al número entero más cercano.
Por lo tanto, si lanza su enumerador a un flotante:
SELECT CAST(field1 AS FLOAT) / field2
fuente
select cast ( ( select 1 ) as real );
https://www.sqlite.org/lang_expr.html#castexpr
fuente
o si desea actualizar la columna según la columna de texto:
UPDATE table_with_fields SET real_field=cast(field_with_txt AS real)
fuente