我用ms sql写的语句,先转到oracle里用
但是不太明白oracle的具体语法
帮我看下,谢谢
mssql 语句如下:
- SQL code
select * from person where userid='ad' andcase when ttlflag=1 and DATEADD(DAY,accountttl,createtime)>GETDATE() then 1 --判定时间 when ttlflag=3 then 1 else 0end =1;
------解决方案--------------------
- SQL code
-- TRY IT ..SELECT * FROM PERSON WHERE USERID = 'ad' AND (CASE WHEN TTLFLAG = 1 AND CREATETIME + ACCOUNTTTL = SYSDATE THEN 1 WHEN TTLFLAG = 3 THEN 3 ELSE 0 END) = 1;-- 根据我的想法,可简化之如下:SELECT * FROM PERSON WHERE USERID = 'ad' AND (TTLFLAG = 1 AND CREATETIME + ACCOUNTTTL = SYSDATE);