我有一个日期列,它以GMT时区格式存储日期
- '年-月-日时.分:秒.毫秒上午/下午,例如2022年11月3日上午10时23分31秒007000000*。
我被提供了一个日期,我想编写一个查询来检查给定的日期是否等于表中存储的日期,但我想忽略毫秒。我想确保这些日期在同一时区(GMT)。这样做是为了检查日期是否已经存在,并防止重复的日期插入,尽管忽略了毫秒部分。enter code here
如果不存在具有该日期的记录,我将使用条件有条件地插入记录
Insert into table_name (col1, col2, col3, col4, col5, col6, col7)
SELECT ?,?,?,?,?,?,? from dual
where 0 = (select count(*) from table_name where strat_time = ?);
2条答案
按热度按时间xdnvmnnf1#
您 可以 截断 时间 戳 ( 小 到 分钟 ;秒 将 不 起 作用 - 看看 这 是否 足够 ) , 或者 您 可以 将 timestamp 转换 为 date ( 它 将 下降 到 秒 ) 。
例如 :
( 设置 环境 - 您 不必 这样 做 )
中 的 每 一 个
比较 :
格式
在 您 的 情况 下 , 您 可以
格式
rmbxnbpk2#
使用
MERGE
语句并匹配1秒宽的范围: