- ベストアンサー
Access2007の事で
現在、Access2007のクエリを使ってランクを表示させようとしているのですが、そんな事は出来るのでしょうか? 出来るのであればやり方教えていただけるとありがたいです。 現在、得点が入っているテーブルから得点を取ってきてそれに応じて 100000以上ならAランクという物を作りたいと思っています。
- hayate_as
- お礼率30% (4/13)
- その他(データベース)
- 回答数2
- ありがとう数3
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
データを入れているテーブルをtblDATAと します。フィールドはID(オートナンバー), 名前(テキスト型)、得点(数値型)とします。 次に示すSQL文は0、1~19、20~29、 30~39、40~49、50以上というように得点 圏を区切り、それぞれE,D,C,B,A,AA,AAA というようなランク付けをしています。 得点圏やランク付けは修正してください。 SELECT tblDATA.氏名, tblDATA.得点, IIf([得点]=0,"E","") & IIf([得点]>=1 And [得点]<=9,"D","") & IIf([得点]>=10 And [得点]<=19,"C","") & IIf([得点]>=20 And [得点]<=29,"B","") & IIf([得点]>=30 And [得点]<=39,"A","") & IIf([得点]>=40 And [得点]<=49,"AA","") & IIf([得点]>=50,"AAA","") AS ランク FROM tblDATA; ランク付けを実現しているのは、最初の IIf から AS ランク までです。 たとえば希望されている100000以上をA とするだけなら、 IIf([得点]>=100000,"A""") AS ランク とするだけです。つまり、 SELECT tblDATA.氏名, tblDATA.得点, IIf([得点]>=100000,"A""") AS ランク FROM tblDATA; とするだけです。 ここで使っているIIf関数 はヘルプやネットで調べてください。 クエリのデザインビューのランクという フィールドをクリックしてビルドを開けば その中にランクのフィールドにかかれている 文が確認できます。IIf関数の中で得点圏を 設定しながら、いくつかのIIf関数をつなげて ランクを作っていきます。その構造は SQL文の中で確認してください。
その他の回答 (1)
- 30246kiku
- ベストアンサー率73% (370/504)
以下参考になるでしょうか ACCESS2007でイレギュラーなグループ化は可能ですか? http://oshiete1.goo.ne.jp/qa5492502.html > 現在、得点が入っているテーブルから得点を取ってきてそれに応じて > 100000以上ならAランクという物を作りたいと思っています。 だけであれば、 SELECT * FROM テーブル WHERE 得点 >= 100000; で抽出できると思います。 (抽出されたものをAランクという扱いにすれば良いと思います)
関連するQ&A
- アクセス・選択クエリについて
アクセス・選択クエリについて こんにちは。現在、選択クエリについて悩んでおります。 テーブルAとテーブルBからそれぞれ3つのフィールドを選び、選択クエリを作成。しかし、出来上がったクエリのデータシートには一切データが表示されていません。ならばと思い、テーブルAからだけ3つのフィールドを選びクエリを表示させると、きちんと表示します。テーブルA,テーブルBには当然主キーが設定されていますが、その事と関係するのでしょうか?ご存知の方、どうか教えてください。宜しくお願い致します。
- 締切済み
- オフィス系ソフト
- ACCESSについて
Accessで以下のように処理したいのですが、方法を教えてください。 下記のように2つのテーブル1、2があり、それぞれ一つずつの項目(A、B)があります。 テーブル1 テーブル2 項目A 項目B 001 002 002 004 005 006 006 007 008 008 これをクエリーを使って、 クエリー0 テーブル1.項目A テーブル2.項目B 001 002 002 004 005 006 006 007 008 008 と表示させたいのですが、どうしたらいいでしょうか?
- ベストアンサー
- オフィス系ソフト
- Access2002 Insert関数が未定義関数となり、エラー
XP Access2002です。 ランキング形式のテーブルから、クエリを作成しています。 クエリでの表示は A1 となっているのですが、それにハイフン「-」を入れて、A-1としたいです。 「A1」は、テーブル名:「ランク」内のフィールド名:「順位」 SQLビューで insert(ランク!順位,2,0,'-') AS ランキング としたのですが、結果は、未定義関数と出てしまいます。 InsertをReplaceに変更したら、今度はアラーとは出ませんが、表示画面では、エラー表示になってしまいます。 構文が違うのでしょうか? SQLを使っていて、『未定義』とアラートが出たのは初めてですので、戸惑っています。
- ベストアンサー
- オフィス系ソフト
- ACCESSのクエリで、ランクテーブルを使ってランク付けをしたい
例えば次のような処理をしたいのですが、適切な方法がわかりません。宜しくお願いいたします。 <ランクテーブル> 最低 最高 ランク 81 100 A 41 80 B 0 40 C <成績データ> 山田 28点 加藤 89点 成績データにランクデータを反映させ、上記の例では山田のランクを”C”に、加藤のランクを”A"と表示するクエリを作りたいと思います。EXCELなら簡単ですが、ACCESSではどのようにすればいいのでしょうか? 宜しくお願いいたします。
- ベストアンサー
- その他(データベース)
- ACCESS 教えて下さい
前も似たような質問をしたのですがうまく応用が出来なかったので再度ご教授お願い致します。 テーブルA 商品NO SS S A B C A001 1000 2000 3000 4000 5000 A002 500 700 800 900 950 A003 1500 2500 3000 4500 5500 テーブルB 会社名 会社ランク AAA SS BBB S CCC A があります。 二つをくっつけて受注管理のクエリをつくりました クエリA 購入日 会社名 会社ランク 商品NO 金額 この中で AAAの会社がA001の商品を買ったら金額欄に1000 BBBの会社がA002を買ったら 700 と表示させたくて、 クエリAの金額欄に 金額: IIf([会社ランク]=A,(SELECT A FROM テーブルA WHERE 商品No = 商品No),IIf([会社ランク]=SS,(SELECT SS FROM テーブルA WHERE 商品No = 商品No),IIf([会社ランク]=S,(SELECT S FROM テーブルA WHERE 商品No = 商品No),0))) としたのですが、できません。 間違いのご指摘と、どうすればよいかを教えて下さい。 宜しくお願い致します。
- ベストアンサー
- Windows系OS
- ACCESS2000でのテーブルの結合について
初歩的な質問で恐縮ですが ACCESS2000を使用しテーブルの構造が(フィールド)同じもの(但し入っているデータは異なります)あります。 このテーブルは別々のまま保存した状態でクエリーでひとまとめにして表示させたいのですが 例えば テーブルAには300件 テーブルBには200件 テーブルCには100件の同一構造のデータがあった場合 クエリーDとしてA+B+Cで600件が表示されクエリーDのデータを修正した場合それぞれのテーブルのデータに反映させるようにしたいのです。 以上よろしくお願いいたします。
- ベストアンサー
- その他(データベース)
- アクセスクエリ
アクセスクエリのフィールド MS-accessのクエリで質問です クエリで、3つのテーブルがあります。 どのテーブルのフィールドにも[売上]があります。 この3つのテーブルの[売上] フィールド1列に表示させる方法はありませんか
- ベストアンサー
- その他(データベース)
お礼
ありがとうございます とても参考になりました