2014-07-21 95 views
1

我想提供一个正确的有序名称列表。按西里尔字母排序

我的问题:SQL ORDER BY子句是以多种语言提供正确的有序字符串的最佳方式还是存在一些应该考虑的问题?

我刚用俄文字母测试过它,它似乎工作。

回答

2

列进行排序的使用依赖于collation该列,或适用于某种可选的排序规则 - 即:ORDER BY {column name} COLLATE {collation name}

你会建议挑选符合您要求的整理,也许Cyrillic_General_CI_AS

参见http://msdn.microsoft.com/en-us/library/ms143508(v=sql.105).aspx

+0

为了提供正确的结果,需要“整理”吗? @podiluska – Nico

+0

@Nico排序规则定义了排序顺序。这取决于你对“正确结果”的解释是 – podiluska

+0

对我而言,正确的结果是每种语言中正确的有序搜索结果。我用英文和西里尔文数据进行了尝试,并且无需整理。 @podiluska – Nico

0

SQL order by子句是显示正确的有序名称列表的最佳方式。

+0

请确实提供一些信息,比如如何用'ORDER BY'子句排列名称列表的最佳方式。这将有助于OP。 –

0

SELECT * FROM your_table ORDER BY NLSSORT(your_column, 'NLS_SORT =俄语');