преобразование int в real в sqlite
деление в sqlite возвращает целое значение
sqlite> select totalUsers/totalBids from
(select (select count(*) from Bids) as totalBids ,
(select count(*) from Users) as totalUsers) A;
1
мы можем типизировать результат, чтобы получить реальное значение результата деления?
4 ответа:
просто умножьте одно из чисел на
1.0
:SELECT something*1.0/total FROM somewhere
это даст вам деление с плавающей запятой вместо целочисленного деления.
в Sqlite деление целого числа на другое всегда округляется до ближайшего целого числа.
поэтому, если вы приведете свой перечислитель к поплавку:
SELECT CAST(field1 AS FLOAT) / field2