Orcale总结

1,获取系统当天的0点到24点

select trunc(sysdate), to_date(to_char(sysdate,'yyyy-mm-dd')||'00:00:00', 'YYYY-MM-DD HH24:MI:SS'),to_date(to_char(sysdate,'yyyy-mm-dd')||'23:59:59', 'YYYY-MM-DD HH24:MI:SS')  from dual

2,数据库的备份与还原

备份                                           
1,exp 用户名/密码@127.0.0.1/orcl owner=用户名 file= E:\7-qyk\20180629.dmp log= E:\7-qyk\20180629.log
2,exp rldm/rldm@sjthmis file=d:/rldm.dmp  owner=(rldm)  log=rldm.log
还原                                         
imp 用户名/密码@127.0.0.1/orcl  fromuser=备份的用户名 touser=往哪儿导的用户名  file=F:\qyk\20180629.dmp log= F:\qyk\20180629.log

3,获取最新记录

4,Sql语句执行顺序:from--where--group by--having--select--order by

其他:

count() over(partition by ... order by ...):求分组后的总数。
  max() over(partition by ... order by ...):求分组后的最大值。
  min() over(partition by ... order by ...):求分组后的最小值。
  avg() over(partition by ... order by ...):求分组后的平均值。
  lag() over(partition by ... order by ...):取出前n行数据。  

  lead() over(partition by ... order by ...):取出后n行数据。

  ratio_to_report() over(partition by ... order by ...):Ratio_to_report() 括号中就是分子,over() 括号中就是分母。

5,返回参数(列名)中第一个非NULL的字段值,注意不是为空''

看例子:

--创建表
IF OBJECT_ID('#') IS NOT NULL   DROP TABLE #
CREATE TABLE #(
    COL1 VARCHAR(10),
    COL2 VARCHAR(10),
    COL3 VARCHAR(10)
)
GO
--插入数据
INSERT INTO # SELECT NULL,'COL2',''
--查询
SELECT coalesce(COL1,COL2,COL3) FROM #
--结果是
/*
COL2
*/

但是如果该字段中所有的值都是NULL,coalesce将返回NULL!

6,自定义排序

select XZDXDW_ID, decode(XZDXDW_NAME ,null,'',XZDXDW_ID) XZDXDW_NAME from LZ_DIC_XZDXDW order by decode(xzdxdw_id,'TMB',1,'SGC',2,'SKF',3,'LYC',4,'FAG',5,'1厂',6)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值