您的位置:首页 > 数据库 > Oracle

oracle,mysql,sqlserver SQL

2015-03-31 14:26 239 查看
1. 6天以内的记录

Oracle:

select *
from WSSP_ORDER_MAIN 
where ROUND(TO_NUMBER(SYSDATE - ORDER_DATE_))<=6;

注:TO_NUMBER 转化为数字,此处将日期差转为为数字,并用round方法进行四舍五入。如果想要精确到分秒,直接乘以数字就行。



300秒以内的记录

select *
from WSSP_ORDER_MAIN
where ROUND(TO_NUMBER(SYSDATE - ORDER_DATE_)*24*60*60)<=300 );


MySQL:

select *
from wssp_order_main
where DATEDIFF(NOW(),ORDER_DATE_)<=6;

注:DATEDIFF() 函数返回两个日期之间的天数,比较级别到天。如果要精确到分秒,这个DATEDIFF()函数无法满足,需要用到TIMEDIFF()函数。



select *
from wssp_order_main
where TIME_TO_SEC(TIMEDIFF(NOW(),ORDER_DATE_))/60/60/24 <=6;

注:TIMEDIFF() 函数返回两个日期之间的time差值,如08:08:08。TIME_TO_SEC() 函数将time值转化为秒。



SQLServer:

select * 
from stone.WSSP_ORDER_MAIN 
where DateDiff(hh,ORDER_DATE_,getDate())<=6;



2. 日期与时间拼接成完整时间,并和当前日期比较

Oracle:

select T1.*
from WSSP_ORDER_MAIN t1
where to_date(CONCAT(CONCAT(to_char(T1.SAILING_DATE_,'yyyy-MM-dd'),' '),T1.SAILING_TIME_),'yyyy-mm-dd,hh24:mi:ss') <= SYSDATE;

注:to_char将日期转换成字符串,也是用CONCAT函数拼接字符串。最后用to_date将字符串转化为日期。



MySQL:

啥时候用到这条语句,当日期和时间分别存到2个字段,但需要合起来和当前日期比较

select t1.*
from wssp_order_main t1
where str_to_date(CONCAT(CONCAT(date_format(t1.SAILING_DATE_,'%Y-%m-%d'),' '),t1.SAILING_TIME_),'%Y-%m-%d %H:%i:%s') >= NOW();

注:date_format 将日期格式转化为字符串,目前我的time字段在数据库是字符串。前后都是字符串,再用CONCAT函数,拼接字符串。拼接好了,再用str_to_date将字符串转换为日期类型。



3.Oracle==查找记录中PLAN_BERTH_ID_ 重复的记录

SELECT * 
FROM TIC_TICKET 
WHERE PLAN_BERTH_ID_ IN (SELECT PLAN_BERTH_ID_ FROM TIC_TICKET GROUP BY PLAN_BERTH_ID_ H***ING COUNT(*)> 1)



4.Oracle==向表中添加字段

alter table WSSP_ORDER_DETAIL
add TIC_TICKET_ID_ number(10);
 
5.SQLServer==剩余时间"XX天XX小时XX分"
<pre class="sql" name="code">select cast(floor(datediff(minute,时间1,时间2) / 1440) as varchar)+'天'+

       cast(floor((datediff(minute,时间1,时间2) % 1440)/60) as varchar)+'小时'+ 

       cast(((datediff(minute,时间1,时间2))-

           (floor(datediff(minute,时间1,时间2) / 1440) *1440)-

           (floor((datediff(minute,时间1,时间2) % 1440)/60)*60)) as varchar)+'分'

 from 表名



                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐