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

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

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

You are not logged in.

Announcement

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


#1 2015-10-28 17:32:21

けんた
Guest

Max関数は関連テーブルのフィールドは数字しか扱えないの?

会員TBLと評価TBLがあるとします。
会員TBLのフィールドは、会員番号(数字)、氏名(テキスト)。
評価TBLのフィールドは、会員番号(数字)、日付(日付)、評価(テキスト)。
評価フィールドにはA、B、Cといった文字が入るとします。
ここでこの二つのテーブルを会員番号同士でリレーションします。
そして会員TBLに最大評価フィールド(計算、テキストを返す)を"Max(評価TBL::評価)"と定義したとします。

こちらの希望としては、会員毎の最大評価フィールドにAなりBなりCなりが表示されることを期待しているのですが、空欄になってしまいます。
代わりに評価フィールドに数字(1、2、3)をにゅうりょくすると、それらが表示されます。
また、試しに評価フィールドに数字と文字の混在(1A、2B、3C)をにゅうりょくすると、数字のみが表示されます。
また、試しにカスタムダイアログで Max ( "A" ; "B" ; "C" ) を試したところ、Cが表示されました。

Max関数は関連テーブルのフィールドを指定した場合、数字しか返さないのでしょうか?

#2 2015-10-28 17:37:07

けんた
Guest

Re: Max関数は関連テーブルのフィールドは数字しか扱えないの?

環境を書くのを忘れていました。
FMA13,WIN7です。

#3 2015-10-28 17:54:36

とおりすがり
Guest

Re: Max関数は関連テーブルのフィールドは数字しか扱えないの?

評価TBL::評価のフィールドタイプは何になってますか?

#4 2015-10-28 18:01:46

holi
Guest

Re: Max関数は関連テーブルのフィールドは数字しか扱えないの?

Max関数にテキストって使えるんですね。知りませんでした。

やり方はちょっと変わりますが、
会員TBLのレイアウトに、評価TBL::評価のフィールドを置いて、
リレーションに対して評価で降順ソートをかけるというのはどうでしょうか。

#5 2015-10-28 20:23:57

けんた
Guest

Re: Max関数は関連テーブルのフィールドは数字しか扱えないの?

とおりすがり wrote:

評価TBL::評価のフィールドタイプは何になってますか?

テキストになっています。
なお最大評価フィールドも計算結果はテキストです。

holi wrote:

会員TBLのレイアウトに、評価TBL::評価のフィールドを置いて、
リレーションに対して評価で降順ソートをかけるというのはどうでしょうか。

なるほどこういう方法もあるんですね。参考になります。

やはりMax関数については、わたしが当初希望していたような使い方はできないんですかね。

#6 2015-10-28 20:40:49

虎ペット
Guest

Re: Max関数は関連テーブルのフィールドは数字しか扱えないの?

なんか書いてある内容が変だけど
http://filemaker-jp.custhelp.com/app/an … /a_id/8488

ソートできる値はMaxも計算できるんで、ただのバグでしょう。どっかのバージョンで直ったと思ってたけど。

#7 2015-10-29 17:17:19

とおりすがり
Guest

Re: Max関数は関連テーブルのフィールドは数字しか扱えないの?

ヘルプには

Min や Max などの統計関数は、最初の引数のデータタイプを使用して全ての比較を行います。たとえば、最初の引数のデータタイプがテキストの場合、その他のすべての引数はテキストに変換されてから比較されます。

って書いてあるけど、実際やってみるとテキストでも数値として返ってきちゃいますね。

#8 2015-10-30 09:07:14

チポ
Member

Re: Max関数は関連テーブルのフィールドは数字しか扱えないの?

MinやMaxが数値以外を評価しないのはずっと前、
知る限りFM4からのバージョンからで、
私はそれを仕様と思っています。


> Last(評価TBL::評価)
これは
リレーションのソートの条件により、
#4 holiさんのソート順の逆の指定が必要でしょう。

Offline

#9 2015-10-30 14:02:24

けんた
Guest

Re: Max関数は関連テーブルのフィールドは数字しか扱えないの?

max関数が数字しか扱えない仕様ということで理解しました。
また、文字列を対象としたい場合、リレーションでソートを指定したり、必要に応じてLast関数を使うという方法が知れて良かったです。
皆様、アドバイスありがとうございました。

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.008 seconds, 9 queries executed - Memory usage: 518.44 KiB (Peak: 523.34 KiB) ]