查询:
SELECT
CAST ('2010-12-13' AS TIMESTAMP) - CAST ('2007-01-01' AS TIMESTAMP) <= INTERVAL '4 years',
CAST ('2010-12-13' AS TIMESTAMP) <= CAST ('2007-01-01' AS TIMESTAMP) + INTERVAL '4 years',
CAST ('2010-12-13' AS TIMESTAMP) - CAST ('2008-01-01' AS TIMESTAMP) <= INTERVAL '3 years',
CAST ('2010-12-13' AS TIMESTAMP) <= CAST ('2008-01-01' AS TIMESTAMP) + INTERVAL '3 years'
结果:false true true true
为什么第一列CAST('2010-12-13'AS TIMESTAMP)-CAST('2007-01-01'AS TIMESTAMP)<=间隔'4 years'返回FALSE ??
我想我知道了。间隔“ 1年”仅包含360天。
第1列:左侧= 1442天,右侧= 360 * 4 = 1440天—>返回false
第2列:在右边的表达式中,2007(2007-01-01的年部分)+ 4(4年间隔)= 2011 —>右边=‘2011-01-01’
第3列:左= 1077天,右= 360 * 3 = 1080天—>返回true