sql - 截断时间戳

标签 sql oracle timestamp oracle11gr2

假设我有一个时间戳变量:

select timestamp '2011-02-24 08:30:42 +06:00' from dual;

有什么方法可以将其“截断”为类似的内容

'2011-02-24 08:00:00 +06:00'

(我已经减少了分钟和秒数,但离开了时区)

目标oracle版本为11g r2

最佳答案

SQL> select to_timestamp_tz(to_char(timestamp '2011-02-24 08:30:42 +06:00', 'YYYY-MM-DD HH24 TZH:TZM'), 'YYYY-MM-DD HH24 TZH:TZM') from dual;

TO_TIMESTAMP_TZ(TO_CHAR(TIMESTAMP'2011-02-2408:30:42+06:00','YYYY-MM-DDTZH:
---------------------------------------------------------------------------
24.02.2011 8:00:00,000000000 +06:00

关于sql - 截断时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5099080/

相关文章:

java - 从数据库查找表填充所有下拉字段

mysql - 如何修复 mySQL 查询以查找与每个日期的总计数(包括零)映射的所有月份日期?

php - 如何在两个mysql unix时间戳之间搜索?

sql - PostgreSQL 以毫秒为单位的 postgres 预创建日期的圆形时间戳秒数

sql - 有效地随机化(洗牌)Sql Server 表中的数据

java - 无注释的 Restful Web 服务

java - 没有小时、分钟、秒的 Oracle current_date 或 sysdate

sql - 如何对数据中包含 '%'的列执行Like in SQL?

linux - 如何在期望脚本的时间戳中使用 -gmt 标志

php - SELECT 语句不能正常工作