文章分类 -  ORACLE/SQL

分析函数
摘要:概述Analytic functions compute an aggregate value based on a group of rows。分析函数主要是用于解决诸如“计算动态累计”、“找出一个组内的%”、“前N个查询”、“计算正在流动的平均数”此类的问题和其他很多方面的问题,即它解决很多统计方面的信息。分析函数和聚集函数类似,但是不同于聚集函数的是,它们对它们基于的组数据返回多行聚集结果,而聚集函数就返回一个单一结果。如情况一,返回工号在100到1000之间的员工的工资之和,这种是用聚集函数处理;而如情况二,以工号升序排列,返回工号在100到1000之间的员工的工资和在这个员工之前的1 阅读全文
posted @ 2012-05-25 15:22 kinddevil 阅读(189) 评论(0) 推荐(1)
left join、inner join中的on与where的区别
摘要:table a(id, type):id type----------------------------------1 12 13 2table b(id, class):id class---------------------------------1 12 2sql语句1:select a.*, b.* from a left join b on a.id = b.id and a.type = 1;sql语句2:select a.*, b.* from a left join b on a.id = b.id where a.type = 1;sql语句3:select a.*, b 阅读全文
posted @ 2012-05-09 14:28 kinddevil 阅读(89) 评论(0) 推荐(0)
Oracle中表的连接方式
摘要:一般的相等连接:select * from a, b where a.id = b.id;这个就属于内连接。 对于外连接: Oracle中可以使用“(+)”来表示,9i可以使用LEFT/RIGHT/FULL OUTER JOIN LEFT OUTER JOIN:左外关联 SELECT e.last_name, e.department_id, d.department_name FROM employees e LEFT OUTER JOIN departments d ON (e.department_id = d.department_id); 等价于SELECT e.last_name, 阅读全文
posted @ 2012-05-09 14:11 kinddevil 阅读(125) 评论(0) 推荐(0)
Oracle中Merge into详细介绍
摘要:MERGE语句是Oracle9i新增的语法,用来合并Update和Insert语句。通过MERGE语句,根据一张表或子查询的连接条件对另外一张表进行查询,连接条件匹配上的进行UPDATE,无法匹配的执行INSERT。这个语法仅需要一次全表扫描就完成了全部工作,执行效率要高于INSERT+UPDATE。/*语法*/MERGE [INTO [schema .] table [t_alias] USING [schema .] { table | view | subquery } [t_alias] ON ( condition ) WHEN MATCHED THEN merge_update_c 阅读全文
posted @ 2012-05-09 13:56 kinddevil 阅读(114) 评论(0) 推荐(0)
SQL函数大全
摘要:SQL中的单记录函数1.ASCII返回与指定的字符对应的十进制数;SQL> select ASCII('A') A, ASCII('a') a, ASCII('0') zero, ASCII(' ') space from dual;AAZEROSPACE659748322.CHR给出整数,返回对应的字符;SQL> select chr(54740) zhao, chr(65) chr65 from dual;ZHAOCHR65赵A3.CONCAT连接两个字符串;SQL> select concat('0 阅读全文
posted @ 2012-05-09 13:49 kinddevil 阅读(256) 评论(0) 推荐(0)