みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
ファイルメーカーproアドバンス13を使用しています。
countで関連レコードの件数は計測できますが
特定のフィールドの重複を除いた件数というのは計測できるでしょうか?
たとえば、販売履歴が下記のような場合、社名で重複を除いて「3件」というのを取得したいのです。
A社 1/4 1000円
B社 2/5 500円
C社 2/5 2000円
B社 3/5 1500円
1例
社名のカウントという集計フィールドと、Get(レコードID)という計算フィールドを作る。
自己リレーションを設定する。
テーブル テーブル2
社名 = 社名
レコードID ≥ レコードID
重複という計算フィールドを作る、式は、テーブル2::社名のカウント=1
重複の合計という集計フィールドを作る。
その関連レコードで動的値一覧を作り、その動的値一覧の内容をValueListItemsで取り出し、そのリスト行数(社数)をValueCountでカウントする。
Offline
ExecuteSQL関数使えば一発
ExecuteSQL ( "
SELECT COUNT ( DISTINCT \"社名のふぃ\" )
FROM \"関連テーブル名\"
WHERE \"関連テーブルのキーフィールド\" =?
" ;
"" ; "" ;
親テーブルのキーフィールド
)
SELECT DISTINCT
はFM12より3割ぐらい早くなったみたいですが、
SELECT COUNT(DISTINCT
が遅いのは変わってないようです。
KEN_ALLの5列目でやってみると、上が2.8秒で下は34秒もかかる。
ValueCount(ExecuteSQL(”SELECT DISTINCT
にすると上と同じ時間でできます。
Offline
Pages: 1
[ Generated in 0.005 seconds, 9 queries executed - Memory usage: 549.53 KiB (Peak: 581.5 KiB) ]