2013-08-18 2 views
0

다음 쿼리를 사용하고 있는데 빈 결과가 표시되지만 테이블에 레코드가 있습니다. 나 데이터가 테이블에 존재하는 빈 result.but를 돌려 두 경우 쿼리에 그것을숫자가 십진수 인 경우 SQL 쿼리가 작동하지 않습니다.

select * from wp_rg_lead_detail where lead_id=5047 and field_number=1.6 
select * from wp_rg_lead_detail where lead_id=5047 and field_number=1.6 

을 할 수있는 방법을 알려 주시기 바랍니다.

field_number의 데이터 유형은 데이터베이스에서 부동입니다.

+0

처럼보십시오 당신 평등을 위해 수레를 비교해서는 안됩니다 : 예를 들어보십시오 http://stackoverflow.com/questions/8839460/why-doesnt-this-sql-query-return-any-results-comparing-floating-point-numbers –

+0

하지만 나는 예를 들어 가치를 혼합했다. 2,3, 1.3,1.6.8.1,8.5,8.6 데이터베이스에서이 값에 관한 값을 원한다.> =와 <= equal을 사용하면 field_number에 해당하지 않는 다중 결과가 1.3 또는 1.6 – user1734190

답변

1

변경 열 진수로하거나 숫자, 그들은 정확한 숫자 데이터 values.Floats가 (저장되는 방식) approximative 번호

EDIT 항상 저장이

select * from wp_rg_lead_detail where lead_id=5047 and format(field_number,1)=1.6 
+0

으로 반환되지만 테이블에는 예 2, 4, 1.3,1.6의 두 값을 모두 갖습니다. 중력 형식을 사용하므로 하위 필드의 ID입니다. – user1734190

+0

감사합니다. 작동 중입니다. – user1734190

관련 문제