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

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

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

You are not logged in.

Announcement

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


#1 2023-09-22 20:18:12

いもけんぴ
Guest

ExecuteSQL関数の 合計について

表題の通り質問させて下さい。

環境
Win10 FM19使用

とあるフィールドの値の合計をExecuteSQL関数を利用して求めようとしています。
式は上手く作ることが出来たのですが、合計が0の場合Nullが返ってくるため、その後の式に利用するとき思った動作をしてくれません。
そこで、0の場合、0と返してくれる方法はあるのでしょうか?

ExecuteSQL ( "SELECT SUM ( フィールド1 ) FROM テーブル WHERE フィールド2=?" ,"","", 検索 )

この形の式でLet関数の変数に複数代入して使用しています。

説明が下手で申し訳ありませんが、よろしくお願いします。

#2 2023-09-22 20:23:45

himadanee
Guest

Re: ExecuteSQL関数の 合計について

厳密には「合計が0の場合」でなく「合計する数値がない場合」です。(0の場合なら0が返ります)
この場合は結果が1行(GROUPがない)ので、単純に関数の結果に+0すればいいでしょう。
ちなみにFMの関数ですので、Nullでなく空文字列になってると思いますが、結果がある場合もそのままだとテキストですから、そういう点でも+0する意味があります。

#3 2023-09-23 06:04:05

いもけんぴ
Guest

Re: ExecuteSQL関数の 合計について

+0ですか。言われて納得、目からうろこです。
executeSQLを多用している計算フィールドでの不具合だったので、修正はシンプルであればあるほど良いと思っていたのですが、この上なくシンプルな修正で済みそうで助かります。
週明けに修正実行してみます。ありがとうございます。

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.005 seconds, 9 queries executed - Memory usage: 543.96 KiB (Peak: 579.85 KiB) ]