初心者のFileMaker pro Q&A

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

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

ログインしていません。

アナウンス

Claris FileMaker Pro ヘルプ
新しい質問は、新規トピック から投稿して下さい。


#1 2023-09-14 09:45:46

minei
メンバー

購入日時で顧客を絞り込みたい

いつもお世話になっております

環境
Claris FileMaker 2023
win10

複数店舗の中でA店舗で購入した注文者で
過去1年間で2回以上購入しいる注文者、
かつ現在から-365日目を起点に過去に購入したことがない顧客を絞り込むにはどのようなスクリプトを作れば良いでしょうか

フィールド一覧
店舗名、注文番号、注文日、顧客ID、注文者名、商品連番、商品名、個数、単価、小計、届け先名、出荷日

ご教示いただきたく
何卒宜しくお願い致します。

オフライン

#2 2023-09-14 10:14:21

チポ
メンバー

Re: 購入日時で顧客を絞り込みたい

各レコードのその顧客の何番目のレコードか
分かるフィールドを作ったほうが簡単になるのでは。

その方法は
注文番号が注文順にシリアルなら、
自己リレーションを
  顧客ID = 顧客ID
and
  注文番号 >=注文番号
として、
  Count ( ::顧客ID )
で求められます。


> 現在から-365日目を起点に過去に購入
うるう年が絡んでも365日ですか?

オフライン

#3 2023-09-14 10:19:22

Shin
メンバー

Re: 購入日時で顧客を絞り込みたい

条件で、B店舗で2年前に注文しているのは、どちらですか。
また、A. B店舗でそれぞれ注文していれば、それは2回ですか。

A店舗の注文書だけを対象にするのでしたら、
注文日 > ( Get ( 日付 ) - 365 )
という計算式を作っておき、それのカウントと合計を集計するフィールドをそれぞれ作っておきます。
顧客マスターから、顧客IDと店舗名でリレーションをはり、カウント集計 = 合計集計、合計集計 >= 2 で検索すればいいでしょう
https://www.dropbox.com/scl/fi/f3v3du0d … e85d&dl=0。

編集者 Shin (2023-09-14 10:45:06)

オフライン

#4 2023-09-14 10:52:15

minei
メンバー

Re: 購入日時で顧客を絞り込みたい

チポ様
有難うございます
質問が言葉たらずで申し訳ございません

>うるう年が絡んでも365日ですか?
この部分は自由に設定できればと考えており
新規購入からその3ヶ月後、半年後、1年後と追いかけてリピート回数のピークと離脱や平均単価など顧客生涯単価を調査したいと考えております。

申し訳ないです
質問を訂正させて下さい
特定の店舗を選び
365日前から335日前の(30日間)で新規購入した人で、現在まで2回以上の購入がある顧客を特定し抽出したいと考えております。

何卒宜しくお願い致します

オフライン

#5 2023-09-14 10:55:30

minei
メンバー

Re: 購入日時で顧客を絞り込みたい

Shin様
有難うございます
>条件で、B店舗で2年前に注文しているのは、どちらですか。
>また、A. B店舗でそれぞれ注文していれば、それは2回ですか。
各店サービス内容が異なる為、各店舗ごとにカウントしたいと考えております

オフライン

#6 2023-09-14 15:14:07

Shin
メンバー

Re: 購入日時で顧客を絞り込みたい

> 特定の店舗を選び
> 365日前から335日前の(30日間)で新規購入した人で、現在まで2回以上の購入がある顧客を特定し抽出したいと考えております。
それならもっと簡単でしょう。
店舗を選ぶと、該当するレコードが抽出されます。
https://www.dropbox.com/s/ws9beykhxwmvi … 2.zip?dl=0

編集者 Shin (2023-09-14 15:15:35)

オフライン

#7 2023-09-27 12:43:53

minei
メンバー

Re: 購入日時で顧客を絞り込みたい

Shin様
有難う御座います
勉強不足で理解に時間がかかっております。

スクリプトで、365日以前に購入経験(他店も含めて)のある顧客を除外するにはどのようにすれば良いでしょうか
>Get ( 日付 ) - 365 & "..." & Get ( 日付 ) - 332

オフライン

#8 2023-09-27 13:46:25

Shin
メンバー

Re: 購入日時で顧客を絞り込みたい

過去からの経過日付が頻繁に必要そうですので、Get ( 日付 ) - 購入日 という計算フィールドを作っておき、その数字を検索した方がいいようですね。
そのフィールド > 365 で検索すればいいです。

オフライン

#9 2023-09-27 14:51:33

minei
メンバー

Re: 購入日時で顧客を絞り込みたい

Shin様
有難う御座います。
設定します。

以下のような場合
Aさんを除外したいのですが、なにか補足で書き込む必要御座いますでしょうか。
Aさん(400日前に初回購入、360日前、200日前にリピート購入)
Bさん(360日前に初回購入、200日前にリピート購入)

オフライン

#10 2023-09-27 14:55:09

チポ
メンバー

Re: 購入日時で顧客を絞り込みたい

> 365日以前に購入経験(他店も含めて)のある顧客を除外
顧客を検索したいのなら、
顧客マスタに初回購入日を持たせて、
それを
> Get ( 日付 ) - 364
で検索すればいいのでは。

その顧客の購入履歴は、購入履歴テーブルに
  関連レコード移動
で対象レコードにできます。

オフライン

#11 2023-09-27 18:26:20

minei
メンバー

Re: 購入日時で顧客を絞り込みたい

チポ様
ありがとうございます

>顧客マスタに初回購入日を持たせて、

手動ではとうてい追いつかず、初回購入日を検索する方法を探しておりました。
初回購入を起点にLTV(その月の初回購入者)の平均値を出したかったのです

顧客ID 約30万
受注日データ 約65万
注文商品データ 約150万

オフライン

#12 2023-09-27 19:46:35

himadanee
ゲストユーザー

Re: 購入日時で顧客を絞り込みたい

顧客IDのテーブルに初回購入日がないってことですか?
受注データをインポートするだけでできますが...

>Get ( 日付 ) - 購入日 という計算フィールドを作っておき
これは非保存フィールドになるので、あんまり検索の役には立たないような...

#13 2023-09-27 21:02:56

minei
メンバー

Re: 購入日時で顧客を絞り込みたい

himadanee様
有難うございます
>顧客IDのテーブルに初回購入日がないってことですか?
登録日=初回購入日にならないので困っております

オフライン

#14 2023-09-27 22:30:49

Shin
メンバー

Re: 購入日時で顧客を絞り込みたい

30万レコードもあると、非保存の計算フィールドではダメですね。

オフライン

#15 2023-09-28 08:47:17

チポ
メンバー

Re: 購入日時で顧客を絞り込みたい

顧客IDでリレーションし、
その設定で、購入日の昇順ソート指定します。

これで、
初回購入日をルックアップできますね。

既存のレコードには
再ルックアップですが、
それなりの時間がかかるでしょうし、
他でレコード開いているとエラーになります。
誰も使わない時間帯でやるしかないでしょう。

この作業は一回のみですから我慢してくださいね。

このフィールドは索引設定できますから、
検索などはそれほどストレスなくできると思いますよ。

オフライン

#16 2023-09-28 18:26:43

minei
メンバー

Re: 購入日時で顧客を絞り込みたい

チポ様、Shin様、himadanee様
有難う御座います
早速試してみます。
色々アドバイスいただき誠に有難う御座います。

オフライン

クィック投稿

メッセージを書いて送信してください。
登録の確認

実在の人物による登録であることを確認します。

Board footer