我在MS Access 2010中有一个查询字段,它将转换亚太地区的日期。
我的查询字段如下所示。这是一个计算字段。 '员工名单'是表名和'地区''创建'这里是字段名称。添加了0.3958,以便将亚太地区的日期与其他两个地区对齐。
报告日期:
CDate(Int(IIf([Employee List]![Region]="APAC",[Manual_list]![Created]+0.3958,[Manual_list]![Created])))
现在我想在Oracle中实现这个结果,但我对SQL并不熟悉。任何人都可以帮我在oracle中得到这个结果。
由于
答案 0 :(得分:3)
假设将.3958
添加到Access中的日期增加9.5小时(.3958 * 24约为9.5),在Oracle中添加9.5小时的方法是:
your_date + INTERVAL '570' MINUTE
那是因为9.5小时= 570分钟。您也可以这样做,这可能会更好;你的选择:
your_date + INTERVAL '9' HOUR + INTERVAL '30' MINUTE
要添加IF
逻辑,请使用CASE语句。总而言之,你得到这样的东西:
SELECT
CASE
WHEN Region = 'APAC' THEN Created + INTERVAL '570' MINUTE
ELSE Created
END
FROM your_table
... and so on
答案 1 :(得分:0)
在ORACLE中,您可以更改数据库的时区:
ALTER database SET TIME_ZONE = '09:30';