回答編集履歴
1
回答内容をわかりやすいように加筆修正しました。
answer
CHANGED
@@ -1,14 +1,14 @@
|
|
1
|
-
|
1
|
+
他の項目と合わせてユニークにできるのであれば、複数項目を組み合わせた値でORDER BYをするとかいう手もあります。
|
2
2
|
以下はサンプルです。テーブル名が「DATA」で「SCORE」が得点、「ID」は成績表であれば学籍番号みたいなものをイメージしています。
|
3
3
|
> SELECT TOP 10 ID
|
4
4
|
> FROM DATA
|
5
5
|
> ORDER BY RIGHT("000000" & SCORE,6) & RIGHT("000000" & ID,6) DESC;
|
6
6
|
上記のサンプルはSCORE降順・ID降順で上位10件です。
|
7
|
-
ID
|
7
|
+
SCORE降順・ID昇順にしたいのであれば
|
8
8
|
> ORDER BY RIGHT("000000" & SCORE,6) & RIGHT("000000" & ID,6) DESC;
|
9
9
|
を
|
10
10
|
> ORDER BY RIGHT("000000" & SCORE,6) & RIGHT("000000" & 999999 - ID,6) DESC;
|
11
11
|
にするといけたりします。
|
12
12
|
フォーマットを決めて複数の項目を組み合わせて文字列として比較するという発想です。
|
13
13
|
|
14
|
-
|
14
|
+
力技でスマートではないと思いますが。
|