sql数据库和oracle数据库 string类型字段用orderby排序 分别是根据什么排序的啊?

sql数据库和oracle数据库 string类型字段用orderby排序 分别是根据什么排序的啊? 具体根据什么机制拍的?求详解,百度半天不太多答案。。

首先说明下oracle中没有String类型,而是Varchar类型。order by 的顺序是assic(读作:阿斯科马)码表中”字符“列进行排序的。

解释:一般会根据字符串的首字母:大些字母>小写字母>特殊字符>数字。如果首位相同继续排列第二位,直到不同的位。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-06-23
应该是根据字符的 ASCII码的大小来比较的!追问

谢谢,能再说具体点么?我百度搜的也是说mysql是根据ascii排序,oracle百度说是根据字典排序 哈哈 不太懂

追答

例如:以下4个字符的ASCII码,在计算机中用二进制表示
二进制 十进制 十六进制 字符
01000001 65 41 A   

01000010 66 42 B  

01000011 67 43 C      

01000100 68 44 D

就是根据二进制的值来排序的!
你还要还不懂,那就真没辙了,你补充一下ASCII码的知识吧

追问

可是您说的是 字符 a b c d 那种 我说的是string 字符串 你好 您好什么的这些啊

第2个回答  2014-06-23
sql数据和oracle数据库都没有string类型。谢谢
只有 char或者 varchar追问

我是在java中操作,但是最终是到数据库中操作啊、、、

追答

如果要说规格:ISO 14651规格和Unicode 4.0
认为是 ASCII 就行
给你个参照:
Bat
bat
BAT
BET
Bet
bet

追问

大哥,小弟基础薄弱,能说通俗易懂点么

追答

ASCII 码
参照的例子是说。如果出现大小写,大写会出现在前面,然后是小写。仅供参照。

第3个回答  2014-06-23
根据首字母ASCII大小追问

比如 你好 和 好人 你好就是 n 好人 就是 h 是这么理解么??比较n和h?

追答

汉字 和字母不一样的 字母有对应的ASCII

而汉字默认排序规则通常是Chinese_PRC_CI_AS,汉字按照汉语拼音的字典顺序来排序:首先按拼音,拼音相同按声调,声调相同按笔画数。