「これはヤバかったな」という遅刻エピソード

Access2016で、下記レコードの一覧があります。

No  地区名 ソート順  値          順位
1  北日本 12    1.10000000000000  1
2  北日本 18    1.05769230769231  2
3  北日本 11    1.05555555555556  3
4  北日本 25    1.00000000000000  4
5  北日本 16    0.991452991452991  5
6  北日本 17    0.965317919075145  6
7  北日本 13    0.956521739130435  7
8  北日本 20    0.944444444444444  8
9  北日本 24    0.93006993006993  9
10  北日本 27    0.923664122137405  10
11  北日本 10    0.916666666666667  11
12  北日本 19    0.891304347826087  12
13  北日本 6    0.88695652173913  13
14  北日本 8    0.875000000000000  14
15  北日本 23    0.846715328467153  15 → 16にしたい
16  北日本 22    0.846715328467153  15 → 15にしたい
17  北日本 14    0.844444444444444  17
18  東京   1    0.715343134451122  1
19  東京   3    0.843151351513555  2  → 3にしたい
20  東京   2    0.843151351513555  2  → 2にしたい
ーーーーーーーーーーーーーーーーーーーーーーーーー

上記の一覧で、以下のSQL使用して順位を付けました。
※SQL:DCount("*","テーブル1","[地区名]"='" & [地区名] & "' AND [値] > " & [値])+1
質問ですが、一覧にも書かれておりますが
同点の場合、順位を条件によって再設定したいです。
条件①:同じ「地区名」内で順位を付ける。
条件②:値が同点の場合、ソート順が昇順(小さい→大きい順)で順位を付ける。

以上となりますが、恐れ入りますが先生たちの知恵を貸してください。

A 回答 (1件)

例の「東京」のデータが変?



順位: DCount("*","テーブル1","[地区名]='" & [地区名] & "' AND [値] > " & [値])+DCount("*","テーブル1","[地区名]='" & [地区名] & "' AND [値] = " & [値] & " AND [ソート順] <=" & [ソート順])

もっとうまく書けそう。
取り敢えず動けばよい、ということで。
    • good
    • 1
この回答へのお礼

bonaronさん

ご返事頂き、誠にありがとうございます。
おかけ様で、解決しました。
指摘した東京のところは確かミスでした。
申し訳ございません。
もう一度感謝致します。

お礼日時:2021/11/26 10:38

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A