oracle insert only time(oracle仅插入时间)
问题描述
我想将数据作为时间而不是日期插入数据库.如果我使用 to_date('2012-08-31 07:39:33', 'YYYY-MM-DD HH24:MI:SS')
它也会添加日期.如果我使用 to_date('09:34:00', 'HH24:MI:SS')
它也会添加年、月、日,从无到有:|后来我需要获取时间在 x 和 y 之间的行,而不考虑年、月或日.我怎么做?谢谢
I would like to insert data to db as time, not date. If I use to_date('2012-08-31 07:39:33', 'YYYY-MM-DD HH24:MI:SS')
it adds date too.
If I use to_date('09:34:00', 'HH24:MI:SS')
it adds year, month, day as well, from nowhere :|
Later I need to get rows where time is between x and y, not taking in account the year, month or day. How do I do that?
thanks
推荐答案
DATE
类型总是包含日期组件.
A DATE
type always includes the date component.
一种选择是继续使用 DATE
并编写代码以忽略日期组件.为了使查询更高效,您可能希望在诸如 TO_CHAR( date_field, 'HH24:MI:SS' )
之类的内容上创建基于函数的索引,并在查询中使用该表达式.
One option is to continue using DATE
and write your code to ignore the date component. In order to make queries on the time efficient, you might want to create a function-based index on something like TO_CHAR( date_field, 'HH24:MI:SS' )
and use that expression in your queries.
或者,您可以使用 NUMBER
字段来存储自午夜以来的秒数,并据此编写查询.
Alternatively, you could use a NUMBER
field to store the number of seconds since midnight, and write your queries in terms of that.
这篇关于oracle仅插入时间的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:oracle仅插入时间
基础教程推荐
- 如何在 SQL Server 的嵌套过程中处理事务? 2021-01-01
- Sql Server 字符串到日期的转换 2021-01-01
- 无法在 ubuntu 中启动 mysql 服务器 2021-01-01
- SQL Server 中单行 MERGE/upsert 的语法 2021-01-01
- SQL Server 2016更改对象所有者 2022-01-01
- 将数据从 MS SQL 迁移到 PostgreSQL? 2022-01-01
- 使用pyodbc“不安全"的Python多处理和数据库访问? 2022-01-01
- ERROR 2006 (HY000): MySQL 服务器已经消失 2021-01-01
- SQL Server:只有 GROUP BY 中的最后一个条目 2021-01-01
- 在 VB.NET 中更新 SQL Server DateTime 列 2021-01-01