programing

숫자가 무한대와 동일한 위치 선택

linuxpc 2023. 8. 29. 20:11
반응형

숫자가 무한대와 동일한 위치 선택

SQL에서 열(데이터 유형:number동등한InfinityOracle 10g에서?

select * from MYTABLE where MYCOLUMN = Infinity;

출처: 로랑 슈나이더:

select * from MYTABLE where MYCOLUMN = binary_double_infinity;

아니면 암시적인 캐스팅으로, 그냥:

select * from MYTABLE where cast(MYCOLUMN as binary_double) = binary_double_infinity;

또는 부동 소수점 조건 사용:

select * from MYTABLE where cast(MYCOLUMN as binary_double) is infinite;

SQL Fiddle을 첨부하고 싶지만 Laurent가 언급했듯이 "오라클 클라이언트에 많은 버그가 있을 것으로 예상됩니다." 이는 SQL Developer에서 작동하지만 SQL Fiddle은 숫자 오버플로를 받습니다.

먼저 다음을 수행하는 방법:

SQL> SELECT 1/0F COL FROM DUAL
  2  /

       COL
----------
       Inf

이제 비교해 보겠습니다.

SQL> WITH DATA AS(
  2  SELECT 1/0F COL FROM DUAL)
  3  SELECT * FROM data WHERE col = binary_double_infinity
  4  /

       COL
----------
       Inf

업데이트 : 알렉스 덕분에is infinite절도 옵션입니다.

하고 있습니다12.1.0.1.

와 동일한 쿼리is infinite절 :

SQL> WITH DATA AS(
  2  SELECT 1/0F COL FROM DUAL)
  3  SELECT * FROM data WHERE col is infinite
  4  /

       COL
----------
       Inf

언급URL : https://stackoverflow.com/questions/26137332/select-where-number-equals-infinity

반응형