Oracle中怎么计算出两个timestamp类型相差的毫秒数

0

5个回答

CREATE OR REPLACE FUNCTION uf_timestamp_diff(endtime in TIMESTAMP,starttime in TIMESTAMP)

RETURN INTEGER

AS

str VARCHAR2(50);

misecond INTEGER;

seconds INTEGER;

minutes INTEGER;

hours INTEGER;

days INTEGER;

BEGIN

str:=to_char(endtime-starttime);

misecond:=to_number(SUBSTR(str,INSTR(str,' ')+10,3));

seconds:=to_number(SUBSTR(str,INSTR(str,' ')+7,2));

minutes:=to_number(SUBSTR(str,INSTR(str,' ')+4,2));

hours:=to_number(SUBSTR(str,INSTR(str,' ')+1,2));

days:=to_number(SUBSTR(str,1,INSTR(str,' ')));

``````RETURN days*24*60*60*1000+hours*60*60*1000+minutes*60*1000+seconds*1000+misecond;
``````

END;

1
pluie-cloudy 这是个方法呀 只要调用就行 十万行级的数据最多10s

Yuanhaoxin 哥们查询数据量很大，这样每个执行下存储过程是不是有点.....慢，就需要一个查询sql

create or replace function oracle_to_unix(in_date IN DATE) return number is

begin

return( (in_date -TO_DATE('19700101','yyyymmdd'))*86400 - TO_NUMBER(SUBSTR(TZ_OFFSET(sessiontimezone),1,3))*3600);

end oracle_to_unix;

``````Oracle date时间换成Unix时间戳
``````
1
Yuanhaoxin in_date -TO_DATE('19700101','yyyymmdd'))*86400 是不是to_date这里还要转一次到timestamp

SELECT TO_NUMBER(TO_DATE('2014-07-28 17:12:45', 'YYYY-MM-DD HH24:MI:SS') -
TO_DATE('1970-01-01 8:0:0', 'YYYY-MM-DD HH24:MI:SS')) * 24 * 60 * 60 * 1000
FROM DUAL;

http://www.jb51.net/article/53007.htm

0
Yuanhaoxin 类型是timestamp 例如20-JUL-17 03.27.32.704000 PM

0

--相差天数
select to_number(
(to_date(to_char(b,'yyyy-mm-dd HH:mi:ss'),'yyyy-mm-dd HH:mi:ss'))
-
(to_date(to_char(a,'yyyy-mm-dd HH:mi:ss'),'yyyy-mm-dd HH:mi:ss'))
) from a;
--相差小时
select to_number(
(to_date(to_char(b,'yyyy-mm-dd HH:mi:ss'),'yyyy-mm-dd HH:mi:ss'))
-
(to_date(to_char(a,'yyyy-mm-dd HH:mi:ss'),'yyyy-mm-dd HH:mi:ss'))
)*24 from a;
--相差分钟
select to_number(
(to_date(to_char(b,'yyyy-mm-dd HH:mi:ss'),'yyyy-mm-dd HH:mi:ss'))
-
(to_date(to_char(a,'yyyy-mm-dd HH:mi:ss'),'yyyy-mm-dd HH:mi:ss'))
)*24*60 from a;
--相差秒
select to_number(
(to_date(to_char(b,'yyyy-mm-dd HH:mi:ss'),'yyyy-mm-dd HH:mi:ss'))
-
(to_date(to_char(a,'yyyy-mm-dd HH:mi:ss'),'yyyy-mm-dd HH:mi:ss'))
)*24*60*60 from a;
--相差毫秒
select to_number(
(to_date(to_char(b,'yyyy-mm-dd HH:mi:ss'),'yyyy-mm-dd HH:mi:ss'))
-
(to_date(to_char(a,'yyyy-mm-dd HH:mi:ss'),'yyyy-mm-dd HH:mi:ss'))
)*24*60*60*1000 from a;

0

PostgreSQL得出两个timestamp的秒数差值
n n n sql语句nSELECT EXTRACT(EPOCH FROM (TIMESTAMP '2017-12-16 12:21:13'- TIMESTAMP '2017-12-15 12:21:00'));nn=&amp;gt;n 86413nn计算两个时间的差值更新另一个时间字段nUPDATE your_tablenSET this_time=(EXTRACT(EPO...
Oracle 计算timestamp和date类型的时间差

postgresql获取系统当前时间毫秒数的sql
PG数据库获取当前时间，并转换为毫秒数的sql：nselect floor(extract(epoch from((current_timestamp - timestamp '1970-01-01 00:00:00')*1000)))

public class DateTest {rn public static void main(String[] args) {rn //获取本周一开始时间rn Calendar cal = Calendar.getInstance(); rn cal.set(cal.get(Calendar.YEAR), cal.get(Calendar.MONDAY

DateTime start=DateTime.Now;nDateTime end=DateTime.Now;nTimeSpan ts=end-start;nts.TotalMilliseconds.ToString();
Oracle中Date型转换成Java对应的long型毫秒数

ORACLE日期转毫秒数

MySQL 计算两个日期之间相差的秒数 SQL
n n n update h5perf_task set run_state = 0 where id inn(SELECT t.id from (SELECT * FROM h5perf_task WHERE run_state = 2nand UNIX_TIMESTAMP( now() )-UNIX_TIMESTAMP(begin_run_time) &amp;gt; ...
JS计算两个时间戳相差的秒数
// 两个时间戳相减 除1000 后取整即可n let second = parseInt((timeStart - timeEnd) / 1000);nnn

var date1 = new Date(‘2017-04-25’)n var date2 = new Date(‘2017-06-25’)n var s1 = date1.getTime(), n s2 = date2.getTime();n total= (s2 - s1)
Java 两个时间戳型的时间差
import java.text.*;rnimport java.util.*;rnrnpublic class TestDate ...{rnrn public static void main(String[] args) ...{rn String t1 = &quot;2008-03-10 16:25:02&quot;;rn String t2 = &quot;2008-03-10 18:26:02&quot;...
java计算两个时间的时间差

mysql函数，日期相差秒数
1、当前时间和创建时间相差的毫秒数nTIME_TO_SEC(TIMEDIFF(NOW(), create_date))

-
Java获取当前系统时间，以及计算时间差，返回毫秒差值
//获取当前时间nSystem.out.println(new SimpleDateFormat(&quot;yyyy-MM-dd hh:mm:ss:SSS&quot;).format(new Date()));nn/**n * 根据String型时间，获取long型时间，单位毫秒n * @param inVal 时间字符串n * @return long型时间n */npublic static long from...
oracle时间差表达式
oracle时间差表达式,计算两时间相差的天、小时、分钟、秒及毫秒数
Oracle中将毫秒类型时间转换以及取到毫秒时间类型的解决办法

timestamp丢失精度问题
mysql数据库存放timestamp格式的数据出现的问题nn场景：在一次的开发中遇到了一个问题，将对象信息实例化到数据库，并缓存在redis。但是在对比redis中的数据和数据库中的数据时候出现了意外，那就是在数据库中类型为timestamp的字段和redis数据不一致。如下图所示：nnn插入的数据=1551793619243nredis存的数据={&quot;vipendtime&quot;:1551793619...

Oracle数据库Timestamp数据差值计算Sql语句

oracle 处理毫秒

//lastDate和nowDate为NSDate类型，最后得到的秒数为lastDate－nowDate所得n NSInteger timeDistance= [lastDate timeIntervalSinceDate:nowDate]
java计算两个时间相差（天、小时、分钟、秒）
public static Long dateDiff(String startTime, String endTime, String format, String str) { rn // 按照传入的格式生成一个simpledateformate对象 rn SimpleDateFormat sd = new SimpleDateFormat(format); ...

hive 计算时间差精确到小时 stamp差
You could use unix_timestamp for dates after 1970:nnnSELECT n (unix_timestamp('2013-01-01 10:10:10') - unix_timestamp('1970-01-01 00:00:00'))/60 nnConvert both dates to seconds from 1970-01-01n Subst...

Date.parse(datestring)：将日期类型转换成毫秒数。datestring：日期或者是时间的字符串。
java取得Timestamp类型的当前系统时间

Oracle 计算两个时间的差值
[code=&quot;sql&quot;]--有两个日期数据START_DATE，END_DATE，欲得到这两个日期的时间差（以天，小时，分钟，秒，毫秒）：rn天：rnROUND(TO_NUMBER(END_DATE - START_DATE))rn小时：rnROUND(TO_NUMBER(END_DATE - START_DATE) * 24)rn分钟：rnROUND(TO_NUMBER(END_DATE - S...
SpringMVC Date类型PO，返回页面是毫秒的时间戳
rn rn1. 导入jackson-annotations包；rn rn2. import com.fasterxml.jackson.annotation.JsonFormat;rn rn3. @JsonFormat(pattern=&quot;yyyy-MM-dd HH:mm:ss&quot;,timezone = &quot;GMT+8&quot;)rn rnrn&amp;lt;audio controls=&quot;controls&quot; styl...
MySQL的Timestamp插入丢失毫秒的问题

ORACLE计算2个时间段相差时间小时、分、秒
ORACLE计算两个时间段的相差分钟，小时，秒数
PostgresSQL:求平均停留时间--timestamp的日期相减
PostgresSQL:求平均停留时间–timestamp的日期相减nnn 业务需求: 车辆信息表(car_info )记录了一辆车进入停车场时间(checkin_time)和离开停车场的时间(checkout_time),要求出这个停车所有车辆停留的平均时间nnnnncar_info表结构:nnnnn Tablesn Aren Coolnnnn col 3 isn right-ali...

var _totalMillisecond = 275606;rnvar _totalSecond = Math.ceil(_totalMillisecond / 1000);nvar _day = Math.floor(_totalSecond / (24 * 60 * 60));nvar _hour = Math.floor((_totalSecond % (24 * 60 * 60)) /
oracle 毫秒数到日期 日期到毫秒数 转换 以及字符串查询 切割 替换 拼接

package cn.com.leador.gms.utils;nnimport java.util.Calendar;nimport java.util.Date;nimport java.util.Map;nimport java.util.TimeZone;nnimport com.alibaba.fastjson.JSONObject;nnpublic class DataUtils {
postgresql 计算时间差的秒数、天数

Java与Oracle中关于毫秒的处理

Oracle数据库 sql语句 毫秒与日期的相互转换