2012-04-20 112 views
2

你如何比较二进制字符串(非字母数字字符)?比较字符串二进制(非字母数字字符)

洪流规格:

关键字必须是字符串,并出现在排序顺序(排序为原料 字符串,而不是字母数字)。应该使用 二元比较来比较字符串,而不是文化特定的“自然”比较。

所以我需要按键排序字典......但我没有得到这个规格.. 解释..anyone?

更新:acordingly到:http://docs.oracle.com/cd/B19306_01/server.102/b14225/ch5lingsort.htm

使用二进制排序

一种方式进行排序字符数据是基于字符编码方案定义的字符 的数值。这称为 二进制排序。二进制排序是最快的排序类型。他们生产 为英文字母合理的结果,因为在ASCII和EBCDIC 标准,提升数值定义A中的字母A到Z。

注意:在ASCII标准,所有大写字母之前的任何 小写字母出现。在EBCDIC标准中,情况正好相反:所有 小写字母都出现在任何大写字母之前。

当在其他语言中使用的字符存在,二进制排序 通常不会产生合理的结果。例如,升序 ORDER BY查询返回的字符串ABC,ABZ,BCD,ABC,当 A具有比乙在字符编码方案更高的数值。 对于使用表意字符的亚洲语言 ,二进制排序通常不具有语言意义。

所以基本上是相同的结果对英语作为alfabetically排序.. 不错..

+0

什么语言??? – yazu 2012-04-20 13:35:22

+0

c#..(或java,如果你喜欢它) – pulancheck1988 2012-04-20 13:38:53

回答

0

任何标准排序过程应该工作,只要你保证字符被视为字节。