在postgres中,日期/时间类型具有特殊值无穷大或无穷大。那些是标准的SQL值,还是这是一个postgres的补充?
答案 0 :(得分:5)
这是PostgreSQL的补充。
标准时间范围从0001-01-01 00:00:00.000000开始,到9999-12-31 23:59:59.999999结束(时区增加了使定义有效的乐趣)。
在20世纪80年代后期,有一个(美国)空军合同AF251要求“世界末日”作为一种时间无限。我不确定哪个DBMS得到了合同,以及系统是否保留了这个概念。但是,我认为大部分都没有。
答案 1 :(得分:0)
据我所知,SQL中没有无穷大的概念。通常,如果操作的结果高于特定数据类型的存储,则会抛出异常或算术溢出。日期时间没有任何uppler下限,因此时间可以被认为是从-Infinity到+ Infinity。
答案 2 :(得分:0)
如果我没弄错,SqlServer中smalldatetime的最大值是2079-06-06