oracle数据库使用学习
来源:互联网 发布:电子日历制作软件 编辑:程序博客网 时间:2024/05/17 14:28
1.查询时间字段问题:
用sql语句查询的时候,需要将字符串转换,to_timestamp或者to_date
where insert_time>to_timestamp('2013-08-01 00:00:00','yyyy-mm-dd hh24:mi:ss')
2.树操作(select…start with…connect by…prior)
http://www.cnblogs.com/linjiqin/archive/2013/06/24/3152674.html
connect by prior m.parent=m.id; 是查询所有的父节点
connect by m.parent=prior m.id; 是查询所有的子节点
level,connect_by_root,connect_by_isleaf,sys_connect_by_path,lpad(' ', (level-1)*2, ' ')补空格
3.in()中的对象不能超过1000个,超过了就只能自己拆分
where a in(...) or a in(...)
4.行列转换,oracle的转换方式比较多,常规的数据库都是使用case when才能实现
1)数据库常规方法:
a.concat和||进行字段拼接
b.WMSYS.WM_CONCAT进行分隔拼接
c.case when语句
2) oracle自带函数,用起来都很简单,可以根据具体的使用情况来进行选择
a.DECODE函数-DECODE(value,if1,then1,if2,then2,if3,then3,...,else)
sum(decode(....)) ... group by...
b.在Oracle 11g中,Oracle 又增加了2个查询:pivot(行转列) 和unpivot(列转行)
c.列转行函数 Listagg(), LISTAGG(XXX,XXX) WITHIN GROUP( ORDER BY XXX)
5.字段合并和group by冲突,前面如果对字段进行了合并操作,再次对该字段进行group by的时候必须也要进行合并操作
select a||b from table1 group by a(错误)
select concat(a,b) from table1 group by a(错误)
select a||b from table1 group by a||b (正确)
select concat(a,b) as c from table1 group by concat(a,b)(正确)
oracle中group by的字段必须在select中全部明确的查询出来
- oracle数据库使用学习
- Oracle学习----Oracle数据库简介
- 学习摸索 Oracle数据库系统使用经验六则
- ORACLE学习之路--使用LOGMNR查看数据库日志。
- 在 .NET 中使用 Oracle 数据库事务(学习)
- jbpm学习笔记(七)——使用oracle数据库
- Oracle数据库11g 学习使用日志(1)
- Oracle 10g数据库游标的使用学习一
- Oracle 10g数据库游标的使用学习二
- ORACLE 11GR2 安装学习时使用的示例数据库
- oracle数据库的学习
- oracle数据库学习
- oracle数据库学习笔记
- 开始学习ORACLE数据库
- Oracle数据库学习总结
- Oracle数据库学习
- oracle数据库--学习
- Oracle学习:数据库规划
- C# 重构之四(提取接口重构)
- xml tomcat 关系
- Kafka分布式消息队列框架
- arrayList——list和arrayList区别
- VB是否过时?
- oracle数据库使用学习
- caffe的LMDB数据库输入数据类型由char改为float
- SICP_Python版第三章:递归与迭代
- 在linux下对接口进行Jmeter 压测
- JDBC连接数据库
- Java多线程同步设计中使用Mutex
- 工厂设计模式
- Android 侧边栏
- 教你使用HighCharts框架显示报表