初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2015-11-13 19:22:50

suga-5
Guest

テーブルAの集計フィールドの結果をテーブルBに表示

ファイルメーカー12を使っています.
テーブルAで100人分(100レコード)のテスト得点のデータベースをつくり,集計フィールド(平均)を作りました.

テーブルBもに,この集計フィールドを表示したいのですがうまくいかず,なぜか個人の得点が表示されています.

ちなみにテーブルA,BはID番号という名の数字フィールドでリレーションを組んでいます.

どなたかご教授お願いします.

#2 2015-11-13 23:17:27

Shin
Member

Re: テーブルAの集計フィールドの結果をテーブルBに表示

リレーションを張って、計算フィールドにされれば如何でしょう。

Offline

#3 2015-11-14 08:04:13

suga-5
Guest

Re: テーブルAの集計フィールドの結果をテーブルBに表示

Shin wrote:

リレーションを張って、計算フィールドにされれば如何でしょう。

返信ありがとうございます.手順として

1.テーブルAとテーブルBをリレーションそれぞれIDフィールドを作りでつないみました
2.テーブルAの集計フィールド(仮にフィールドAとします)をつくりました.
3.テーブルBにフィールドBをつくり,それを計算フィールドとしました.計算式は「 = テーブルA;フィールドA 」です.

以上をやってみましたがフィールドAには集計結果が出ているのにフィールドBで表示される数値は集計ではなく個人の数値が出てしまいます・・・

#4 2015-11-14 09:57:58

旅人
Member

Re: テーブルAの集計フィールドの結果をテーブルBに表示

IDフィールドは個人ID、それともテストID、どちらですか?
Aで100レコードの平均値の集計フィールドがあるのなら
それには100レコードとも同じ平均値が出ているのですよね。
個人の数値とは何ですか。

Offline

#5 2015-11-14 12:40:42

suga-5
Guest

Re: テーブルAの集計フィールドの結果をテーブルBに表示

旅人 wrote:

IDフィールドは個人ID、それともテストID、どちらですか?
Aで100レコードの平均値の集計フィールドがあるのなら
それには100レコードとも同じ平均値が出ているのですよね。
個人の数値とは何ですか。

返信ありがとうございます.
IDは個人が識別できるものとして使用している数字フィールドです.これでテーブルAとBをつないでいます.



1.まずテーブルAに,個人のテスト得点フィールドを作りました.一人につき1レコード表示するようにしています.一人(1レコード)につき1  各々の得点結果(さきほほど"個人の数値"と表現したものです)が表示されています.これが100人分(100レコード)あります.


2.同じくテーブルAに集計フィールドをつくりました.この集計フィールドは100人分の平均を示すものです.

3.テーブルBを作り,そこにもテーブルAの集計フィールドを表示したいのですが,集計フィールドをそのままコピーしたり,計算フィールドに  変えても数字は,個人の得点結果(個人の数値)が表示されます.テーブルAではちゃんと平均で出ているのに・・

説明が分かりにくくて済みません.よろしくお願いいたします

#6 2015-11-14 13:07:48

旅人
Member

Re: テーブルAの集計フィールドの結果をテーブルBに表示

それでしたらBにAの関連フィールドA::平均値を置けば出るはず。
計算フィールドの場合は=A::平均値とか
ID--×--IDでリレーションして=Average(A::得点)とかでも

でも今後Aには1回のテストだけあるわけではないでしょうから、
テストIDでリレーションして
=Average(A2::得点) の方がいいかも。

Offline

#7 2015-11-15 08:05:32

suga-5
Guest

Re: テーブルAの集計フィールドの結果をテーブルBに表示

旅人 wrote:

それでしたらBにAの関連フィールドA::平均値を置けば出るはず。
計算フィールドの場合は=A::平均値とか
ID--×--IDでリレーションして=Average(A::得点)とかでも

でも今後Aには1回のテストだけあるわけではないでしょうから、
テストIDでリレーションして
=Average(A2::得点) の方がいいかも。

たびたび返信ありがとうございます.こちらの返信が遅れて申し訳ございません.

関連フィールドとして
1.テーブルBにフィールドを作りそこに「テーブルA::平均値」をおいたのですが,表示は個人の得点でした.

2.次に計算フィールドにしてみて「=テーブルA::平均値」としてみたのですが,これも表示は個人の得点でした.

3.ID--X--IDでリレーションを組んで「=Average(テーブルA::得点)」でも同じ結果でした.

最後のテストIDというのが少しわからなくてまだ試せていません.
テストIDでリレーションというのは得点フィールドでリレーションをくむということでしょうか?
あとAverage(A2::得点)のA2というのはテーブルAこのことでいいのでしょうか?


何度もすみません.

#8 2015-11-15 10:41:16

旅人
Member

Re: テーブルAの集計フィールドの結果をテーブルBに表示

1回のテストの100人分の得点と、その全体の平均点があるのですよね。
Aの平均点フィールドは100レコード全部が正しい同じ値になっていますか?
集計フィールドは対象レコードの集計を表示するので、Aでは100レコード全部
を対象レコードとしておく必要がありますよ。

Offline

#9 2015-11-15 10:55:24

チポ
Member

Re: テーブルAの集計フィールドの結果をテーブルBに表示

まず、
現在の全レコードの集計だけを考えましょう。

リレーションを
  テーブルB::ID X テーブルA::ID
                      ↑
            X =デカルト積の照合です

テーブルBで計算フィールドを作り、その計算式
   Average ( テーブルA::得点 )
                      ↑
              このテーブル名は、上記のリレーションのリレーションシップでのテーブル名です

これでテーブルBでこのフィールドの値を確認してください。


ここでは集計フィールドは不要で、でる余地がありません。

Offline

#10 2015-11-15 12:07:54

suga-5
Guest

Re: テーブルAの集計フィールドの結果をテーブルBに表示

旅人さん,チポさん,本当にありがとうございます.

恥ずかしながらリレーションが間違っていました.リレーションの知識がなく「=」の演算子でつないでいました.チポさんの×デカルトの照合で気づき,そこで「×」に変えました.あとは旅人さんの言うとおりの設定で問題なく表示されました.

本当に基本的なところで躓いてて申し訳ありません.非常に助かりました.

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.010 seconds, 7 queries executed - Memory usage: 525.5 KiB (Peak: 546.04 KiB) ]