5

私の問題は非常に単純です。文字列の配列があります。Java でソートすると 1 つの順序になりますが、Sql Server 2005 ではわずかに異なる順序になります。私が見つけた違いの例は、Java がこの順序でソートする "jyl ; pagespro" と "jyl" 、および逆の順序で Sql という 2 つの文字列の場合でした。ascii(myColumn) で Sql Server の順序を作成しようとしましたが、まだ効果がありません。どうすれば解決できますか??.....

4

2 に答える 2

4

DaveE の回答を拡張するには、並べ替えに使用する照合を決定した場合は、次のように ORDER BY 句でその名前を使用できます ORDER BY colA COLLATE SQL_Latin1_General_Cp437_CS_AS_KI_WI

これは、 で定義されているソート用のインデックスを使用しないことに注意してくださいcolA。計算列を使用することで、これを回避できます。

一般に、すべての並べ替えを 1 か所 (Java またはデータベース) で行うことをお勧めします。これは、混乱と複雑さにつながるだけです。

于 2013-01-17T19:18:46.827 に答える
1

有効な SQL Server照合に関係していると思われます。これは、使用可能な文字セットだけでなく、文字の並べ替え方法にも影響します。かなり一般的な SQL_Latin1_General ファミリでさえ、利用可能な特定の照合順序が多数あります。

于 2013-01-17T18:40:05.207 に答える