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

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

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

You are not logged in.

Announcement

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


#1 2016-03-17 11:55:28

shony
Member

ExecuteSQL に関しまして

ExecuteSQL関数でこのようなことが可能でしょうか。
環境:FM14 adv Win7 Pro 64

Aテーブルにレコードが全部で100レコードあるとします。

この全レコードから、「検索」と「レコードの対象外に」などを使い ランダムに50レコードだけを対象レコードとして表示します。

この対象レコードだけの Aテーブル内のあるフィールドの改行区切りリストをExecuteSQL関数をつかって表示する方法はありますでしょうか。

集計フィールドの「一覧」を使用すれば簡単ですが、レコード数が膨大になると計算に時間がかかりますので

ExecuteSQL関数で計算できないものかと思い投稿しました。

ご存じの方がいらっしゃいましたら、よろしくお願い致します。

Offline

#2 2016-03-17 15:41:09

scripter
Guest

Re: ExecuteSQL に関しまして

対象レコードは現在のウィンドウの情報なので、SQLでは参照できません。

#3 2016-03-18 00:19:40

shony
Member

Re: ExecuteSQL に関しまして

ご回答ありがとうございました。

Offline

#4 2016-03-18 08:24:21

Moz
Member

Re: ExecuteSQL に関しまして

解決済みになっていますが...

FileMaker で対象レコードから特定のフィールドの値を改行区切りで取得する場合
集計フィールドの一覧が最もパフォーマンスが高い手段となります。

数十万レコードを一覧で取得する場合は書かれている通り時間がかかりますが
数十万レコードの中から数万レコードを取得する場合は対象レコード数に比例して時間は伸びますが数秒です。
数十万レコードの中から数十レコードに至ってはほぼ一瞬で取得されます。

レコード数が少ないにもかかわらず異常に時間が掛かる場合、取得対象のフィールドに原因があります(非保存など)

Offline

#5 2016-03-18 11:53:10

shony
Member

Re: ExecuteSQL に関しまして

Moz wrote:

解決済みになっていますが...

FileMaker で対象レコードから特定のフィールドの値を改行区切りで取得する場合
集計フィールドの一覧が最もパフォーマンスが高い手段となります。

数十万レコードを一覧で取得する場合は書かれている通り時間がかかりますが
数十万レコードの中から数万レコードを取得する場合は対象レコード数に比例して時間は伸びますが数秒です。
数十万レコードの中から数十レコードに至ってはほぼ一瞬で取得されます。

レコード数が少ないにもかかわらず異常に時間が掛かる場合、取得対象のフィールドに原因があります(非保存など)

Mozさん ご回答ありがとうございます。大変勉強になりました。

ついでで申し訳ございませが、このような条件下で「一覧」ではなく、

対象フィールドで「合計」を求めたい場合は、どちらのほうが早くなるのでしょうか。

よろしくお願い致します。

Offline

#6 2016-03-19 04:18:16

Moz
Member

Re: ExecuteSQL に関しまして

対象レコードの間違いですかね?
最初にscripterさんも書いて下さっていますが対象レコードという条件が ExecuteSQL には不適です。

集計フィールドと ExecuteSQL で集計を求める場合でも集計フィールドのほうが早いでしょう。

Offline

#7 2016-03-19 11:36:26

scripter
Guest

Re: ExecuteSQL に関しまして

一覧の集計フィールドを使うより、エクスポートした方が早いらしいですが、本当かな。
そのテストは確かファイルを作成する案件だったんで、リストをFM内で使うにはまたインポートしなくてはいけませんが。

#8 2016-03-19 13:59:00

shony
Member

Re: ExecuteSQL に関しまして

Mozさん

「対象レコードの間違いですかね?」
間違えました。

ありがとうございました。

scripterさん

ありがとうございました。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.005 seconds, 7 queries executed - Memory usage: 512.05 KiB (Peak: 516.59 KiB) ]