• [织梦吧]唯一域名:www.dedecms8.com,织梦DedeCMS学习平台.

织梦吧 - dedecms,网站模板,建站教程,图片素材免费下载

DedeCMS视频教程

史上最详细的oracle order by用法总结

来源: www.dedecms8.com 编辑:织梦吧 时间:2013-09-28点击:

找了很多关于oracle order by的用法介绍,唯独下面这篇总结最详细,可以说是史上最详细的oracle order by用法总结。

1. 按指定的规则排序 
SELECT expr FROM table ORDER BY {column, expr} [ASC | DESC] ]; 
默认的排序是ASC升序(由小到大) 
还可以ORDER BY 字段名的位置[1]| [2] ASC| DESC; 
当字段名很复杂或者是算术表达式时用字段名显示的位置排序很方便.

 

2. 用WHERE限制选择行
(1) 比较操作符 = > < >= <= != <> ^= ,与NULL比较不能用上面的比较操作符 ANY SOME ALL 
SQL操作符 BETWEEN … AND… IN LIKE IS NULL 
NOT BETWEEN … AND… NOT IN NOT LIKE IS NOT NULL 
逻辑操作符 AND OR NOT

(2) 比较顺序(可以用括号改变它们的顺序) 
(1). = < > >= <= in like is null between 
(2). and 
(3). Or 
注意: char和varchar2的比较规则有不同: 
char比较时会忽略字符串后面的空格. varchar2会计算字符串后面的空格

3. LIKE操作 
% 零到任意多个字符 _ 一个字符 
例如: 字段名 like 'M%' 字段名 like '%m%' 字段名 like 'job_' 
如果要找含下划线的字符, 要加反斜线 例如:字段名 like '%X/_Y%' escape '/'

4. 日期字段的比较 
举例: 
日期字段 between to_date('2001-12-12','YYYY-MM-DD') and to_date('2002-02-01','YYYY-MM-DD') 
日期字段> to_date('2001-12-12','YYYY-MM-DD') and日期字段<= to_date('2002-02-01','YYYY-MM-DD');

5. 不能用到索引的比较操作符 
IS NULL 
IS NOT NULL 
LIKE '%m%'

6.ORDER BY 中关于NULL的处理

缺省处理,Oracle在Order by 时认为null是最大值,所以如果是ASC升序则排在最后,DESC降序则排在最前。

当然,你也可以使用nulls first 或者nulls last 语法来控制NULL的位置。
Nulls first和nulls last是Oracle Order by支持的语法
如果Order by 中指定了表达式Nulls first则表示null值的记录将排在最前(不管是asc 还是 desc)
如果Order by 中指定了表达式Nulls last则表示null值的记录将排在最后 (不管是asc 还是 desc)
使用语法如下:
--将nulls始终放在最前
select * from zl_cbqc order by cb_ld nulls first
--将nulls始终放在最后
select * from zl_cbqc order by cb_ld desc nulls last

7.几种排序的写法
单列升序:select<column_name> from <table_name> order by <column_name>; (默认升序,即使不写ASC)

单列降序:select <column_name> from <table_name> order by <column_name> desc; 
多列升序:select <column_one>, <column_two> from <table_name> order by <column_one>, <column_two>; 
多列降序:select <column_one>, <column_two> from <table_name> order by <column_one> desc, <column_two> desc; 
多列混合排序:select <column_one>, <column_two> from <table_name> order by <column_one> desc, <column_two> asc;

标签: oracle orderby
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)

About D8

  • ©2014 织梦吧(d8) DedeCMS学习交流平台
  • 唯一网址 www.DedeCMS8.com 网站地图
  • 联系我们 tom@tiptop.cn ,  QQ