oracle sql 时间间隔计算
计算间隔时间:
select f_date,f_cstime,f_cetime, (((SYSDATE- TO_DATE(f_date||f_cstime,'YYYYMMDDHH24MISS')) * 86400000)-((SYSDATE- TO_DATE(f_date||f_cetime,'YYYYMMDDHH24MISS')) * 86400000))/1000 CURRENT_MILLI from ycsq_t_hauthlog where f_cstime<>'999999'
将字符串转换成日期类:SYSDATE- TO_DATE(f_date||f_cstime,'YYYYMMDDHH24MISS'),
SYSDATE- TO_DATE(f_date||f_cstime,'YYYYMMDDHH24MISS')*86400000 转换成毫秒
相关文档:
create function dbo.F_Get_No
(
@No varchar(100)
)
RETURNS bigint
AS
BEGIN
WHILE PATINDEX('%[^0-9]%',@No)>0
BEGIN
SET @No=STUFF(@No,PATINDEX('%[^0-9]%',@No),1,'') --删掉一个非数字的字符,循环结束,剩余的为数字部分
END
RETURN CONVERT(bigint,@No ......
列出TableA中有的而TableB中没有, 以及B中有而A中没有的记录:
其中两个表的结构相同,选择的Key可以多个
Select Key from
( select * from TableA
Union select * from TableB
)
group by Key
having count(Key)=1
列出TableA中有的而TableB中没有的记录:
Select Key from
( (select * from TableA
Un ......
----start
在SQL语句中应该尽量避免使用OR,因为这样做会影响SQL语句的性能。考虑下面的情况:
CREATE TABLE USER
(
NAME VARCHAR(20) NOT NULL,---姓名
BIRTHDAY DATE---生日
);
现在有这样一个问题:让你查找一下生日是1949-10-1(共和国同龄人)或1978-12-18(十一届三中全会召开时间) ......
transaction 1:
------------------------------------------------------
begin transaction
update table1 set cola = 'str1'
Waitfor time '10:12:00'
update table2 set colb = 'str2'
rollback transaction
transaction 2:
---- ......
sql 很久不用,突然间要求做报表。所以又可以补一补sql知识了。但经常会遇到一些弱智问题.
写了一条sql:select to_date('2009-09-24 12:20:0') 能将改字符串转换为日期
但另外一条sql却转换不了...感觉很奇怪.于是乎。再仔细看一遍 发现
给一个日期字段设置别名时设置成了sib.fbizDate as date我自己都无语了。怎么会设 ......