Page 243 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼RANK関数 みけねこ 03/4/7(月) 12:51 ┗Re:RANK関数 こうちゃん 03/4/7(月) 20:14 ┗Re:RANK関数 みけねこ 03/4/8(火) 11:46 ┗Re:RANK関数 こうちゃん 03/4/8(火) 12:05 ─────────────────────────────────────── ■題名 : RANK関数 ■名前 : みけねこ ■日付 : 03/4/7(月) 12:51 -------------------------------------------------------------------------
クエリ作成での質問です。 テストの得点のフィールドがあり、それに順位をつけるフィールドを作りたい場合 Rank関数を使えばいいのでしょうか?どのように配置したらよいか教えてください。 |
みけねこさん、こんにちは >テストの得点のフィールドがあり、それに順位をつけるフィールドを作りたい場合 >Rank関数を使えばいいのでしょうか?どのように配置したらよいか教えてください。 Rank関数はスプレッドシート関数じゃないですか? 基本的にアクセスでは使えないでしょう。 クエリを新規作成して、以下のSQL文をSQLビューに貼り付けてお試しください。 ※テーブル名、フィールド名は実際のものに変更してくださいね。 SELECT Count(*) AS 順位, テストテーブル.氏名, テストテーブル.得点 FROM テストテーブル, テストテーブル AS テーブル2 WHERE テストテーブル.得点 <= テーブル2.得点 GROUP BY テストテーブル.氏名, テストテーブル.得点 ORDER BY Count(*) |
教えてくださり、ありがとうございます。 なにぶん全くの初心者でお恥ずかしいことをお聞きしますが、 SELECT Count(*) AS 順位, テストテーブル.氏名, テストテーブル.得点 FROM テストテーブル, テストテーブル AS テーブル2 WHERE テストテーブル.得点 <= テーブル2.得点 GROUP BY テストテーブル.氏名, テストテーブル.得点 ORDER BY Count(*) 上記のテーブル2は何でしょう?氏名や得点が入力してあるテーブル=テストテーブルですよね。 すみません。こんな私には無理でしょうか? |
▼みけねこ さん: >教えてくださり、ありがとうございます。 >なにぶん全くの初心者でお恥ずかしいことをお聞きしますが、 > >SELECT Count(*) AS 順位, テストテーブル.氏名, テストテーブル.得点 > FROM テストテーブル, テストテーブル AS テーブル2 > WHERE テストテーブル.得点 <= テーブル2.得点 > GROUP BY テストテーブル.氏名, テストテーブル.得点 > ORDER BY Count(*) > >上記のテーブル2は何でしょう?氏名や得点が入力してあるテーブル=テストテーブルですよね。 > >すみません。こんな私には無理でしょうか? テストテーブルを「テーブル2」の別名で指定しています。 SQLの概要としては、レコードを1つずつ検査して、ある位置のレコードの自分より小さいレコード数を数えて「順位」としています。 実際にクエリに書くときは識別できれば何でもいいですよ。 私はSQL文が長くなるのを避けるため、T1とかT2とかの別名にすることが多いですね。 |