
SQL
文章平均质量分 54
cunxiyuan108
这个作者很懒,什么都没留下…
展开
-
提高SQL查询效率的常用方法
(1)选择最有效率的表名顺序(只在基于规则的优化器中有效): Oracle的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表所引用的表。(2)WHERE子句中的连接顺序: Oracle采用自下而上的顺序解析WHERE子句,根据这个原理原创 2010-08-15 02:24:00 · 1370 阅读 · 0 评论 -
oracle 全角半角转换函数.
函数:to_single_byte(c)转换成半角to_multi_byte(c)转换成全角实例:SELECT '12345', DUMP('12345'), TO_SINGLE_BYTE('12345'), DUMP(TO_SINGLE_BYTE('12345'))FROM dual;◆◆决定一个SQL执行效率转载 2011-10-31 10:17:54 · 1040 阅读 · 0 评论 -
Oracle 取得当天0时0分0秒和23时59分59秒
1. 取得当天0时0分0秒select TRUNC(SYSDATE) FROM dual;2. 取得当天23时59分59秒(在当天0时0分0秒的基础上加1天后再减1秒)SELECT TRUNC(SYSDATE)+1-1/86400 FROM dual;3.取得当前原创 2011-08-04 18:41:17 · 5498 阅读 · 0 评论 -
语句级别设置排序方式
Oracle按照笔划排序 Select * From [tablename] order By nlssort(colname,'NLS_SORT=SCHINESE_STROKE_M'); Oracle按照部首排序 Select * From [tablename] order By nlssort(colname,'NLS_SORT=SCHINESE_RADICAL_M'); Oracle按照拼音排序 Select * From [tablen原创 2011-05-25 20:05:00 · 1022 阅读 · 0 评论 -
Oracle数据库函数(单行函数)
Oracle中的函数和C中的函数差不多,也是有函数名,参数表,和返回值类型组成的,单行函数,是针对每条记录都有一个结果。单行函数可以出现在select 后面,也可以出现在where子句中。需要处理现实的结果时,就把函数写在select后面,用于条件过滤时,就把函数用在where子句中。1,字符函数(varchar)字符是大小写敏感的转小写 lower(‘...’)转大写 upper(‘...’)首字母大写 initcap(‘...’)dual表,是专门用于函数测试和运算的,他只有一条记录 字符串拼接 con原创 2011-05-18 19:57:00 · 1066 阅读 · 0 评论 -
oracle update 多张表的语法
<br />ORACLE UPDATE 语句语法与性能分析的认识:<br /> 为了方便起见,建立了以下简单模型,和构造了部分测试数据:<br /> 在某个业务受理子系统BSS中,<br /> --客户资料表<br /> create table customers ( customer_id number(8) not null, -- 客户标示 city_name varchar2(10) not null, -- 所在城市 custom原创 2010-11-18 12:15:00 · 6972 阅读 · 0 评论 -
Oracle sql 之表连接
<br />表的链接详解:<br />下面是对应两个表连接的图解:<br /><br />原创 2010-11-18 14:44:00 · 769 阅读 · 0 评论 -
动态SQL入门
<br />动态SQL语句的理解<br />1. 动态SQL的分类<br />根据要处理的sql语句的作用不同,可以使用三种不同类型的动态sql方法:<br /> 1) 使用execute immediate语句可以处理包括DDL(create、alter和drop)、DCL(grant、revoke)、DML(insert、update、 delete)以及单行select语句;<br /> 2) 使用open cursorname for sql_statement语句可以处理多行查询操作;<br />转载 2010-11-18 12:08:00 · 1173 阅读 · 0 评论 -
ORACLE time使用总结
ORACLE time使用总结oracle当月、当年、本周数据当月数据Sql代码select * from table twhere t.create_time >=TRUNC(SYSDATE, 'MM')and t.create_time当年数据Sql代码select * from table twhere t.create_time >=trunc(sysdate,'YYYY')and t.create_time本周(国外周日为一个星期第一天)Sql代码where t.c原创 2010-11-18 13:22:00 · 1378 阅读 · 0 评论 -
ORACLE SQL 常用函数总结
1、Substr(arg1,arg2,arg3)说明:arg1是待分割的字符串,arg2和arg3分别是起始分割字符号 其中arg3可选例:substr(12345, 1,4) 结果为 1234补充:两个参数,即arg3为空的用法在SQL SERVER中不适用2、Instr(arg1,arg2,arg3,arg4) 说明:arg1为待搜索内容,arg2为搜索内容,arg3为搜索起始位置,arg4为搜索匹配位置,即第几次匹配(arg4默认为1) 例:Instr('CORPORATE FLOOR原创 2010-08-18 00:27:00 · 861 阅读 · 0 评论 -
oracle函数大全-数字处理函数
<br />F.3 数字函数<br />函数接受NUMBER类型的参数并返回NUMBER类型的数值.超越函数和三角函数的返回值精确到36位.ACOS、ASIN、ATAN、ATAN2的结果精确到36位.<br />l ABS<br />语法: ABS(x)<br />功能: 得到x的绝对值.<br />使用位置: 过程性语言和SQL语句。<br /><br />l ACOS<br />语法: ACOS(x)<br />功能: 返回x的反余弦值.转载 2010-08-15 03:21:00 · 788 阅读 · 0 评论 -
oracle日期格式总结
<br />在oracle中处理日期大全 <br />TO_DATE格式 <br />Day: <br />dd number 12 <br />dy abbreviated fri <br />day spelled out friday <br />ddspth spelled out, ordinal twelfth <br />Month: <br />mm number 03 <br />mon abbreviated mar <br />month spelled out march <br /转载 2010-08-15 02:27:00 · 2409 阅读 · 0 评论 -
oracle获取本周、本月、本季度、本年度的第一天和最后一天
--本周select trunc(sysdate,'d')+1 from dual;--下周一select trunc(sysdate,'d')+7fromdual; --本月select trunc(sysdate,'mm') from dual;select last_day(trunc(sysdate))from dual;--本季select原创 2011-09-19 10:54:50 · 13667 阅读 · 1 评论