초 단위로 차이를 찾기 위해 찾을 수 있습니다. 하지만 밀리 초 단위로 차이를 찾는 방법을 찾을 수는 없습니다. 자바 특정 코드에 대한두 datetime의 차이 (밀리 초 단위)
select (start_time - datetime(2013-08-12 19:05:34.223) year to fraction(3))
::interval second(9) to second
from table1 where event_id = 1
초 단위로 차이를 찾기 위해 찾을 수 있습니다. 하지만 밀리 초 단위로 차이를 찾는 방법을 찾을 수는 없습니다. 자바 특정 코드에 대한두 datetime의 차이 (밀리 초 단위)
select (start_time - datetime(2013-08-12 19:05:34.223) year to fraction(3))
::interval second(9) to second
from table1 where event_id = 1
우선 USEOSTIME 매개 변수가 활성화됩니다 (기본적으로 그렇지 않습니다).
Informix는 데이터베이스가 OS TIME (OS gettime() 기능을 사용함)을 사용하도록 구성된 경우에만 분수/밀리 초를 표시합니다.
이 옵션을 비활성화하면 소수 부분은 항상 0입니다.
활성화되지 않은 경우 사용자 또는 DBA는 onconfig 파일에서이를 변경하고 엔진을 다시 시작해야합니다.
은 데이터베이스에 사용 된 모든 타임 스탬프에 영향을주기 때문에주의하시기 바랍니다.
다음select * from sysmaster:sysconfig where cf_name = 'USEOSTIME';
cf_id 54
cf_name USEOSTIME
cf_flags 0
cf_original 1
cf_effective 1
cf_default 0
1 row(s) retrieved.
drop table if exists tp01;
Table dropped.
create temp table tp01 (dt datetime year to fraction);
Temporary table created.
insert into tp01 values (current);
1 row(s) inserted.
select * from tp01;
dt
2013-10-18 08:29:36.864
1 row(s) retrieved.
select dt, current, (current - dt)::interval second(9) to fraction from tp01;
dt (expression) (expression)
2013-10-18 08:29:36.864 2013-10-18 08:29:36.864 0.000
1 row(s) retrieved.
select dt, current, ((current - dt)::interval second(9) to fraction)*1000 from tp01;
dt (expression) (expression)
2013-10-18 08:29:36.864 2013-10-18 08:29:36.865 1.000
1 row(s) retrieved.
여기 ...
dt (expression) (expression)
2013-10-18 08:30:44.539 2013-10-18 08:30:53.058 8.519
dt (expression) (expression)
2013-10-18 08:30:44.539 2013-10-18 08:30:53.058 8519.000
큰 도움 !!!! 매우 유익한 ... 감사합니다. 그냥 하나의 빠른 Q .. 9는 "second (9)"에 무엇을 의미합니까? – Andy897
@ Andy897 그래서 귀하의 질문은 모두 Java를 목표로하지 않았습니다. \ –
간격을 사용하면 더 큰 값의 "범위"를 지정해야합니다. 예를 들어 interval 데이터 타입에이 값을 넣을 수 있습니다 :'10432.455'는 10,432 초를 의미합니다. (9)는 9 자리 ~ = 999,999,999 초를 사용할 수 있다는 것을 의미하며, (3)으로 제한하면 999 초로 제한되는 값을 가질 수 있습니다 ....... : 이는 캐스트를 사용하여 일로 쉽게 변환 될 수 있습니다 ':: 간격 일 (3) ~ 두 번째'. – ceinmart
죄송하지만 아래의 U에 도움이 될 수있는 SQL 코드는 다음과 같습니다 당신이 정말로 데이터베이스에서 밀리 초 세부를 원한다면, 당신이 있는지 확인해야합니다
select (datediff(ss,StartDate,EndDate)*1000)
.... Informix에는'datediff()'함수가 있는지 모르겠습니다. DB2 버전은 추정치를 리턴하는데, 이는 종종 쓸모 없게됩니다. –
이 기능은 informix (현재 버전, 12.10)에 없습니다. – ceinmart
왜 자바 태그를 한 후 팔초 기다린 나는 위의 선택을 다시 실행? – SpringLearner
자바에서 이것을하고 싶습니다. 그래서 경우에 따라서는이를 달성하기위한 자바 고유의 조잡한 방법이있다. – Andy897
정확히 달성하기 위해 필요한 것이 있습니까? 그것을 성취하려고 무엇을 시도 했습니까? –