Oracle中Is NaN 和 IS Infinite 的用法

来源:互联网 发布:关闭windows功能 编辑:程序博客网 时间:2024/06/06 04:02

Oracle中Is NaN 和 IS Infinite 的用法

-- IS NaN 和 IS INFINIT,不要用 PL/SQL Developer 作此实验,可以用 SQL*Plus
-- 这两个东西怎样用? 其实就和 IS NULL 一样。 NULL 用于在数据库
-- 的所有数据类型的列中存储“不知道”,然后用 IS NULL 来判断。
-- 现在 NaN 和 'INF','-INF' 用于在 BINARY_DOUBL/BINARY_FLOAT 浮点类型
-- 的列中存储“不是数字”和“无限数字”,然后用 IS NaN 和 IS INFINIT 来判断。

DROP TABLE float_point_demo;

CREATE TABLE float_point_demo
(dec_num NUMBER(10,2), bin_double BINARY_DOUBLE, bin_float BINARY_FLOAT);

INSERT INTO float_point_demo
VALUES (1234.56,1234.56,1234.56);

Insert INTO float_point_demo
VALUES (2,'NaN','NaN');

Insert INTO float_point_demo
VALUES (3,'INF','-INF');

SELECT * FROM float_point_demo;

SELECT * FROM float_point_demo WHERE bin_float IS NaN;

SELECT * FROM float_point_demo WHERE bin_float IS INFINITE;
 
转自:http://blog.csdn.net/anguangshi/article/details/2053775
原创粉丝点击