Oracle数据库开发
myzhanglt
这个作者很懒,什么都没留下…
展开
-
Oracle中两个日期处理函数总结
1.Extract(data from datetime) 此函数用于从日期值中摘取特定的数据,例如取得月份年份等.data可选项包括 YEAR,MONTH,DAY,HOUR等,Datetime用于指定被提取的日期时间值.例如下面的语句用于从当前系统日期中取得年份 select Extract(year from sysdate) from dual;以下为运行结果原创 2011-11-15 22:19:16 · 896 阅读 · 0 评论 -
SQL*LOADER导入CSV文件
用SQL*LOADER导入EXCEL文件一般转化成CSV文件后再导入,需要注意两点:(1).CSV文件的字段分隔符为逗号(2).CSV文件定界符为双引号LOAD DATAINFILE 'E:\Test.csv'INTO TABLE BONUSFIELDS TERMINATED BY "," OPTIONALLY ENCLOSED BY '"'(ENAME,JOB,SAL)原创 2012-04-14 16:01:16 · 2388 阅读 · 0 评论 -
SQLLoader学习示例1
下面是使用SQLLOADER导入数据的例子 第一步,应该根据要导入的表和外部数据文件创建好必要的导入控制文件,文件以.ctl结尾,下面是我本次导入时候创建的控制文件LOAD DATAINFILE * INTO TABLE BONUSFIELDS TERMINATED BY ","(ENAME,JOB,SAL)BEGINDATAZHANGLT,PROGRAMER,300原创 2012-04-12 23:38:41 · 695 阅读 · 0 评论 -
利用CONNECT BY实现二进制到十进制的转换
CONNECT BY可用于生成序列,下面的函数就是利用CONNECT BY的这一特性实现的二进制到十进制的转行函数。create or replace function bintodec(bstr in varchar2) return varchar2 is -- ******************************************************** --*原创 2012-03-17 17:22:05 · 524 阅读 · 0 评论 -
Oracle SQL中表连接顺序探究
SQL语句优化中大多会写上这样一句,把记录数最小的记录写到From子句的最后以提高查询的效率,我开始也深信不疑,但是自己写语句验证的时候却得到相反的结果。下面是我验证的结果: SQL> set timing onSQL> select count(*) from all_objects,dept; COUNT(*)---------- 136540 Exe原创 2012-04-03 10:47:29 · 1676 阅读 · 0 评论 -
oracle中LPAD和RPAD函数的使用方法
今日学习遇到一个不熟悉的函数LPAD,查了一下文档,将其用法总结如下:Lpad Function:在PL/SQL中用于往源字符串的左侧填充一些字符。函数参数:lpad( string1, padded_length, [ pad_string ] )其中string1:源字符串padded_length:最终返回的字符串的长度,如果最终返回的字符串的长度比源字符串的小,那么原创 2012-03-25 21:52:40 · 39085 阅读 · 4 评论 -
oracle中常用的分析函数总结
今天在学习《oracleSQL高级编程》,看到了比较全的分析函数列表,故记于此。编号函数功能1LAG访问分区或者数据集中之前的一行2LEAD访问分区或者数据集中之后的一行3First_Value访问分区或者数据集中第一行4Last_Value访问分区或者数据集中最后一行5原创 2012-03-24 22:30:49 · 1051 阅读 · 0 评论 -
数据分组总结
分组在SQL开发是比较常用的功能,下面的几个容易出问题的地方。1.分组函数只能出现在列表,ORDER BY 子句,HAVING子句中。2.如果选择列表同时包含有GROUP BY,HAVING以及ORDER BY子句,那么ORDER BY子句必须放在最后3.如果选择列表同时含有列,表达式和分组函数,那么列和表达式必须出现在GROUP BY子句,否则会提示“不是GROUP BY表达式的”错原创 2011-12-06 23:09:10 · 656 阅读 · 0 评论 -
Oracle中NULL的定义及其相关处理办法
1.定义 在oracle数据库中,NULL表示未知值,既不是空值也不是0,当插入数据时,如果没有为特定列提供值,并且该列没有原先设定的默认值,那么其结果为NULL.尤其要注意的是在算术表达 式中如果出现NULL,那么其结果就是NULL,这会在很多时候造成应用程序输出不符合预想结果.2.处理办法 (1)使用NVL(exp1,exp2)函数 该函数等价于 if exp1原创 2011-11-13 10:42:14 · 537 阅读 · 0 评论 -
oracle数据库中几个概念
刚刚开始接触oracle数据库开发,对其中几个概念不是很理解,于是查了资料整理如下:1.触发器:隐含执行的存储过程,其执行不是由程序调用,也不是手工启动,而是由事件来触发,例如对一个表进行修改操作时就会触发.触发器经常用于加强数据完整性约束和业务规则.但是触发器要慎用,滥用触发器将使得应用程序的维护变得十分困难.2.同义词:在oracle中对用户的管理是通过权限的方式来管理的,也就是说如果原创 2011-11-09 21:22:04 · 740 阅读 · 0 评论 -
如何区分SQL语句中的Where和Group by子句
Where子句和Group By子句的区别主要如下: 1、Where子句用于返回的单行进行限制 2. Group by子句用于对返回的行组进行限制如果Group by 子句中不是对行组进行限制,而是进行单行限制那么应该尽量转换为WHERE子句的条件,这也是SQL优化的内容之一。 下面是一个例子:select t.product_type_id, avg(t.price)原创 2012-10-21 13:54:41 · 2449 阅读 · 0 评论