2016-12-02 24 views
0

検索に表示される列が構成から選択され、構成に基づいてデータをソートできる多言語アプリケーションの要件があります。多言語アプリケーションの基本照合文を拡張するSELECT照会のソート照合

質問1 - 私はこのような選択クエリ使用しています:列を指定せずにこの仕事をするために

Expression type int is invalid for COLLATE clause.

ことが可能です:

SELECT * 
FROM TABLE 
ORDER BY 1 COLLATE SQL_Latin1_General_CP1_CI_AS DESC, 
ORDER BY 4 COLLATE SQL_Latin1_General_CP1_CI_AS DESC 

私は、次のエラーを取得していますが列インデックスを使用するだけで、通常のSQLクエリを書くことができますか?

質問2は - 私はまた、「ID」

のようにソートベースの整数列をサポートする必要があるだろう。しかし、これを許可する任意の回避策があります質問1で述べたように私は同じエラーを取得していますか?または、これはSQL Serverの最新バージョンであっても、SQL Serverの制限事項ですか?

回答/ヘルプがあれば感謝します。

答えて

2

これは、SQLで列のインデックス値を使用するのがベストプラクティスとしても、それは多くの構文では動作しません を照会ではありません

だから、それはあなたのクエリのCOLLATE文の

に列名を使用するのが最適です、あなた文字データ型のフィールド値に使用できます。 数値データ型の場合、COLLATEは使用できません。

関連する問題