如何将MAX Number值插入数据库?

时间:2019-02-25 14:41:09

标签: sql oracle

我有一个非常基本的表,其中MAX_VALUE,MIN_VALUE作为列,我想看看它们之间是否有数字。

问题在于最后一条记录应该是从MIN_VALUE到INFINITY(或大数字)

SELECT * FROM VALUES WHERE 10000000 BETWEEN MIN_VALUE AND MAX_VALUE;

我的最后一个插入内容是这个。如何在此处放入最大值?

insert into VALUES (MIN_VALUE,MAX_VALUE) values (44000.01, ???);

我正在使用ORACLE数据库

2 个答案:

答案 0 :(得分:0)

MAX_VALUE列的数据类型的最后一个值硬编码为最大值。

例如,如果它是INTEGER

insert into VALUES (MIN_VALUE,MAX_VALUE) values (44000.01,2147483647);

答案 1 :(得分:0)

Oracle NUMBERS可以任意大-它们倾向于使用而不是内部数字格式。

一种方法是使用NULL。但是,这使查询变得复杂,并且需要在OR / ON子句中使用WHERE,并且OR会影响性能。

因此,数量众多是一个合理的解决方案。不知道域,我只是将9串在一起:

insert into VALUES (MIN_VALUE, MAX_VALUE)
    values (44000.01, 999999999999);   -- 999,999,999,999 seems big enough

使用9只是因为它们说的是“大价值”,而不是其他数字字符串。