间隔表达式(Interval Expression)生成 INTERVAL YEAR TO MONTH
或 INTERVAL DAY TO SECOND
数据类型的值。
语法如下:
( expr1 - expr2 )
{ DAY [ (leading_field_precision) ] TO
SECOND [ (fractional_second_precision) ]
| YEAR [ (leading_field_precision) ] TO
MONTH
}
表达式 expr1
和 expr2
可以是计算结果值为 DATE
、TIMESTAMP
、TIMESTAMP WITH TIME ZONE
或者 TIMESTAMP WITH LOCAL TIME ZONE
数据类型的任意表达式。
leading_field_precision
和 fractional_second_precision
可以是 0 到 9 的任意整数,这两个参数指定了对应元素值的精确度。如果在指定 DAY
和 YEAR
元素时省略了 leading_field_precision
参数,其使用默认值为 2,表示该元素的值不能超过 2 位整数。
如果对 SECOND
元素省略了 fractional_second_ precision
参数,其默认值为 6,表示该值精确到小数点第6位。如果查询的返回值比默认精度位数更多,OceanBase 会返回一个错误。
例如,下列语句用系统时间戳值减去表 orders 的 order_date 列的值,生成一个间隔值表达式。由于最久远的订单何时生成是未知的,所以指定了 DAY
的精度:
SELECT (SYSTIMESTAMP - order_date) DAY(9) TO SECOND FROM orders WHERE order_id = 2458;
在文档使用中是否遇到以下问题
更多建议
匿名提交