Microsoft SQL Server 2000
テーブル A に Name という名前の列があります。名前フィールドをソートしたい。Name start のすべてではありませんが、多くのレコードが KL であり、その後に数字が続きます (KL 1234、KL 2、KL 323 など)。
表 A
名前
エイブル
ブラボー
KL 2
KL 323
KL 1234
ゼブラ
私が使用する場合
Select Name from A
Order by Name
私は得る
エイブル
ブラボー
KL 1234
KL 2
KL 323
ゼブラ
私が欲しい
エイブル
ブラボー
KL 2
KL 323
KL 1234
ゼブラ
それらがすべてKLで始まる場合、私は使用できます
Select Name from A
Order by cast(replace(name, 'KL', '') as big int)
ただし、これにより、KL で始まらない値に対して「名前を big int としてキャストできません」というエラーが生成されます。
助けてくれてありがとう。