테이블 구조
테이블명 : t_float
f_idx f_float
------ ---------
1 1
2 10
3 0.2
4 0.23
5 0.234
쿼리1 : SELECT * FROM `t_float` WHERE f_float = 0.2
=>
f_idx f_float
------ ---------
----------------=---------------------
f_idx가 3인 row가 나올 것으로 예상하겠지만, 아니다.
부동 소수점인 경우 실제 보이는 값 뒤에 잡다한 값이 섞여 있다.
정수 부분만 사용한다면 모르겠지만, 소수 부분까지 쓴다면 검색이 힘들다.
쿼리2 : SELECT * FROM `t_float`
WHERE f_float > 0.19 AND f_float < 0.21
=>
f_idx f_float
------ ---------
3 0.2
쿼리3 : SELECT *,FORMAT(f_float,14) FROM `t_float`
=>
f_idx f_float format(f_float,14)
------ ------- --------------------
1 1 1.00000000000000
2 10 10.00000000000000
3 0.2 0.20000000298023
4 0.23 0.23000000417233
5 0.234 0.23399999737740
소수점이 있는 숫자는 뒤에 이상한 값들이 붙어있다.