Program Tip

sqlite에서 int를 실수로 변환

programtip 2020. 10. 18. 19:01
반응형

sqlite에서 int를 실수로 변환


sqlite의 나누기는 정수 값을 반환합니다.

sqlite> select totalUsers/totalBids from 
(select (select count(*) from Bids) as totalBids , 
(select count(*) from Users) as totalUsers) A;
1

나눗셈 결과의 실제 값을 얻기 위해 결과를 형변환 할 수 있습니까?


숫자 중 하나에 다음을 곱하면됩니다 1.0.

SELECT something*1.0/total FROM somewhere

정수 나누기 대신 부동 소수점 나누기를 제공합니다.


Sqlite에서 정수를 다른 정수로 나누면 항상 가장 가까운 정수로 내림됩니다.

따라서 열거자를 float로 캐스트하는 경우 :

SELECT CAST(field1 AS FLOAT) / field2

select cast ( ( select 1 ) as real );

https://www.sqlite.org/lang_expr.html#castexpr


또는 텍스트 열을 기반으로 열을 업데이트하려는 경우 :

UPDATE table_with_fields SET real_field=cast(field_with_txt AS real)

참고 URL : https://stackoverflow.com/questions/8305613/converting-int-to-real-in-sqlite

반응형