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

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

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

You are not logged in.

Announcement

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


#1 2017-06-29 14:35:04

ゆう
Member

SELECT SUM

FileMaker v16でExecuteSQL関数で別テーブルの合計値をSUMしたいのですが...

以下式の時、リレーションキーとなる「rKey」のタイプが「数字」では、うまくSUM出来るのですが、
「テキスト」だと「?」となります。

「rKey」は、複数の結合体なのでテキストとして使用したいのですが...何が悪いのでしょうか?

ExecuteSQL ( "SELECT SUM(\"金額\") FROM \"会員F\" WHERE " & 履歴F::rKey & "=\"rKey\"";"";"" )

Offline

#2 2017-06-29 15:05:38

qb_dp
Member

Re: SELECT SUM

TEXTの場合は、「'」シングルクォーテーションで括ります。
ExecuteSQL ( "SELECT SUM(\"金額\") FROM \"会員F\" WHERE \"rKey\"='" & 履歴F::rKey & "'";"";"" )

「?」を使えば、フィールドタイプをきにしなくてもOK。
ExecuteSQL ( "SELECT SUM(\"金額\") FROM \"会員F\" WHERE \"rKey\"=?";"";""; 履歴F::rKey )

Offline

#3 2017-06-29 15:10:07

qb_dp
Member

Re: SELECT SUM

参考まで。
以下のようにすると、式がスッキリして見やすくなり、デバッグもしやすくなります。

変数を設定 [$query;値:
Let(¢query="
SELECT SUM(`金額`)
FROM `会員`
WHERE `rKey`='{rKey}'
"
;
    Substitute ( ¢query ;
        ["`" ; "\""]
    ;    ["{rKey}" ; 履歴F::rKey]
     )

)
]
変数を設定 [$Result;値:ExecuteSQL ( $query ; "" ; ""  )]

Last edited by qb_dp (2017-06-29 15:13:56)

Offline

#4 2017-06-30 13:45:36

ゆう
Member

Re: SELECT SUM

返信が遅れ、申し訳ありませんでした。

ありがとうございます。
早速、試してみます。

御礼まで。

Offline

#5 2017-07-04 11:14:13

ゆう
Member

Re: SELECT SUM

教えて頂いた方法でSUMすることが出来ました。

もう一点お教え頂きたいのですが...

上記式に「種別」の条件を加えるにはどうすればいいのでしょうか?
「rKey」+「種別」といった具合に2つのキーをみてSUMしたいのですが...

よろしくお願いします。

Offline

#6 2017-07-04 14:42:07

Hiro
Member

Re: SELECT SUM

2つの条件式を、希望する論理演算子(ANDかOR)で連結して指定します。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.034 seconds, 9 queries executed - Memory usage: 551.89 KiB (Peak: 579.66 KiB) ]