像Java一样获取SQL Server 2005 sort varchar列

Mad*_*ada 5 sql-server sorting

我的问题很简单:我有一个String数组.在Java中对它进行排序给出了一个顺序,并且在Sql Server 2005中顺序略有不同.我发现的差异的一个例子是两个字符串:"jyl; pagespro","jyl",Java按此顺序排序,Sql按逆序排序.我试图通过ascii(myColumn)订购Sql Server,但仍然没有效果.我该怎么解决这个问题?.....

Fra*_*kPl 4

为了扩展 DaveE 的答案,如果您已确定要用于排序的排序规则,则可以在 ORDER BY 子句中使用其名称,如下所示: ORDER BY colA COLLATE SQL_Latin1_General_Cp437_CS_AS_KI_WI

请注意,这不会使用可能在 上定义的索引进行排序colA。您可以通过使用计算列来解决这个问题。

一般来说,我建议在一个地方进行所有排序:要么在 Java 中,要么在数据库中,但不是有时在这里有时在那里。这只会导致混乱和复杂性。