アプリ版:「スタンプのみでお礼する」機能のリリースについて

下記のようなテーブルがあります。

名前 種別 国語 算数
---------------------
くま 実績 78 80
くま 目標 85 75
りす 実績 98 85
りす 目標 80 80

一覧表示をする際、○か×で色を変えたいので、
データを取得する際、実績が目標を超えているかどうかを
取得したいです。

<結果の例>
くま,実績,78,×,80,○ 
くま,目標,85,×,75,○
りす,実績,98,○,85,○
りす,目標,80,○,80,○

 ○→黒字表示/×→赤字表示

わかりにくいかと思いますが、宜しくお願いします<(_ _)>

A 回答 (4件)

テーブルから[種別]で"実績"だけを選択した実績クエリーと


"目標"だけを選択した目標クエリーを作成します。

この後で

実績クエリーと目標クエリーを名前でリンクして1つのクエリーにします。

このとき下記のような判定の項目を国語、算数でそれぞれ追加します。

=iif([実績クエリー]![国語] >= [目標クエリー]![国語],"○","×")

これで、結果例のようになると思います。
    • good
    • 0

同一のテーブルに目標と実績の2レコード持つことは、データベースの構造上好ましくありません。


RDBでデータ正規化する時は次のように持つことになると思います。
 基本表(実績)
  くま、78、×、80、○
 基本表(目標)
  くま、85、75
 仮想表(クエリーでの射影)
  くま、85、78、×、75、80、○
しかし、この様にデータをこの様に持たなくても
NO2さんの回答の様に1レコード上で、目標、実績を持ったほうがよいのではないかと思います。
ちなみに質問者様の基礎データの形でAccessで得る方法として
(1)くま、85、78、×、75、80、○の基本表を作る。
(2)追加クエリーで目標を追加する。条件="目標"
(3)更新クエリーで実績を更新する。条件=key一致 and "実績"
(4)更新クエリーで判定し更新する。
=結果の例レコードを作る=
(5)追加クエリーで実績を追加する。条件="実績"
 追加の際、判定○×も項目移送します。
(6)追加クエリーで目標を追加する。条件="目標"
 追加の際、判定○×も項目移送します。
以上で実現できると思います。
    • good
    • 0

テーブルの構造は変えちゃダメなのかな?


私なら

名前 国語 国語 判定 算数 算数 判定
    目標 実績    目標 実績 
------------------------------------------------
くま  85 78  × 75 80  ○  
りす  80 98 ○ 80 85  ○

(判定はクエリで作る)
としたいところですが・・・、

この方が判定表示がさせ易いと思いますが、
私より詳しい方がもっと言いアドバイスされると思います。
  
    • good
    • 0

SQL 文(クエリー)の中で Yes/No 型のフィールドとして



[実績]>[目標] AS marubatu

みたいなのを作れば良いかと。
    • good
    • 0

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

関連するカテゴリからQ&Aを探す