NVL和COALESCE的区别:

nvl(COMMISSION_PCT,0)
如果第一个参数为null,则返回第二个参数
如果第一个参数为非null,则返回第一个参数

COALESCE(EXPR1,EXPR2,EXPR3...EXPRn)
从左往右数,遇到第一个非null值,则返回该非null值。
多层判断

第一点区别:从上面可以知道,nvl只适合于两个参数的,COALESCE适合于多个参数。

第二点区别:COALESCE里的所有参数类型必须保持一致,nvl可以不一致。

ps:1、select coalesce(to_char(PARENT_ID),'--') 项目名称,nvl(PARENT_ID,'FD') project_name,CATEGORY_CODE "name" from DM_TRANSGAP_ANALYSIS_CONFIG;

2、select coalesce(TO_CHAR(UPDATE_USER),TO_CHAR(PARENT_ID),'--') 项目名称,nvl(PARENT_ID,'FD') project_name,CATEGORY_CODE "name" from DM_TRANSGAP_ANALYSIS_CONFIG;

Connect By Prior(递归查询):

1、start with id= 是定义起始节点(种子),可以是id也可以是root_id,定义为root_Id查询该节点下所有的树结构,定义为id(子节点)则查询指定的树

2、connect by prior :prior的含义为先前,前一条记录。prior id=root_id 也就是前一条记录

的id等于当前记录的root_id(父id)
3、可以向下或者向上查找。。。。

4、level字段为oracle特有的层级字段,可以通过level字段查询指定的层级

select root_id,id,name,level from t2 where level=1

start with root_id = 0

connect by prior id = root_id;

年月日的日期处理:
(select sysdate from dual) time,  item.update_date>add_months(sysdate,-1) 
select (to_char(sysdate,'dd')-1) from dual

to_char(LAST_DAY(add_months(sysdate,-1)),'dd ') (to_char(sysdate,'hh24')-1),

select trunc(sysdate) from dual去掉时间保留日历,namely,2017/02/01

concat(to_char(sysdate,'yyyy')||to_char(add_months(sysdate,-1), '-MM-'),'01   namely 拼接返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL

//计算起止时间

Calendar calendar = Calendar.getInstance();

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String endDate = sdf.format(calendar.getTime());
calendar.add(Calendar.HOUR_OF_DAY, Integer.parseInt(period) * (-1));
String startDate = sdf.format(calendar.getTime());

||在oracle中的作用是连接两个字符串

(select sysdate from dual) time,

item.update_date>add_months(sysdate,-1)

select (to_char(sysdate,'dd')-1) from dual

to_char(LAST_DAY(add_months(sysdate,-1)),'dd ')

(to_char(sysdate,'hh24')-1),

select trunc(sysdate) from dual去掉时间保留日历,namely,2017/02/01

concat(to_char(sysdate,'yyyy')||to_char(add_months(sysdate,-1), '-MM-'),'01   namely 拼接返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL

  • ||在oracle中的作用是连接两个字符串

substr(字段,a,b)a代表第几个位置b代表长度0和1的效果一样用负数则从右边开始数第几个位置

schema:
一个用户有一个缺省的schema,其schema名就等于用户名,当然一个用户还可以使用其他的schema。如果我们访问一个表时,没有指明该表属于哪一个schema中的,系统就会自动给我们在表上加上缺省的sheman名。比如我们在访问数据库时,访问scott用户下的emp表,通过select * from emp; 其实,这sql语句的完整写法为select * from scott.emp。在数据库中一个对象的完整名称为schema.object,而不属user.object。

SQL> select * from test;
NAME
----------
system

SQL> ALTER SESSION SET CURRENT_SCHEMA = scott; --改变用户缺省schema名
Session altered.

SQL> select * from test;
NAME
----------
scott

切断其他占用表的session:

select session_id from v$locked_object;

SELECT sid, serial#, username, osuser FROM v$session where sid = 81;

select session_id,serial# from v$locked_object a left join v$session b on a.session_id = b.sid; 

ALTER SYSTEM KILL SESSION '81,38658';

查询版本等信息:

SELECT * FROM v$version;

10g数据库不能有多余的with语句。

最新文章

  1. #研发解决方案#iDB-数据库自动化运维平台
  2. 利用office2010 word2010生成目录
  3. GOOGLE不能访问的解决方法
  4. 迅为4412开发板支持AVIN视频输入/AV监控摄像头输入模块
  5. FileInputStream and FileOutputStream
  6. 【翻译】Sencha Touch2.4 The Layout System 布局
  7. HTML5 input控件 placeholder属性
  8. [转] Chrome 控制台不完全指南
  9. Windows内置安全主体
  10. iTOP-开发板-MiniLinux-C程序调用shell命令
  11. Java运行环境
  12. The innodb_system data file 'ibdata1' must be writable
  13. Windows控制程序网站带宽及Qos(TOS或DSCP)
  14. 使用Windows Server 2003搭建一个asp+access网站
  15. Spring的AsyncHandlerInterceptor
  16. 混合开发 Hybird Cordova PhoneGap web 跨平台 MD
  17. 生产者消费者模型——wait/notify/notifyAll使用
  18. 复杂sql语句:按部门统计人数
  19. Spark SQL Hive Support Demo
  20. Multipath多路径冗余

热门文章

  1. android_浅析canvas的save()和restore()方法
  2. 投影纹理映射(Projective Texture Mapping) 【转】
  3. Kaggle的Outbrain点击预测比赛分析
  4. python matplotlib包图像配色方案
  5. 百度地图之标注一组地理坐标<2>
  6. source insight的查找功能
  7. RSA、AES加密解密
  8. Mysql多线程性能测试工具sysbench 安装、使用和测试
  9. Canvas学习笔记——弹动
  10. python pyinotify模块详解