これは、私が尋ねた以前の質問のパート 2 のようなもので、すでに回答を得ています。
そこでは、月ごと、年ごとのすべての新規顧客の数が必要でした。今、私は実際に新しい人のリストをメールアドレスで見たいと思っています(しかし、その質問に答えたコードをよく理解していないので、自分でそれを行うこと、そしてさらに重要なことに、それが正しいことを確認することについてまだ迷っています. )。
結果は、理想的には電子メール アドレスの 1 列だけになります。例えば:
2011年6月の新規顧客
Month
email1@abc.com
email2@def.net
email3@ghi.edu
それほど複雑でない場合は、月ごとにグループにまとめることもできます。意味...
2011年の新規顧客
Jan Feb Mar
email1 email4 email7
email2 email5 email8
email3 email6 email9
...等々。試して理解できるようにするために、一度に 1 か月だけ表示するシンプルなものを好むかもしれません (笑)。
基準は非常に単純です。
- 2011 年 6 月に初めて注文したすべての顧客のリスト。
- 最初の質問から、「新規顧客」とは、(a) 2011 年 6 月 1 日より前に注文したことがない人、および (b) 2011年 6 月 1 日以降に少なくとも 1 回注文した人として定義されることを知っています。
私のテーブルはtblOrdersと呼ばれます。私のメールはEmailと呼ばれます。日付はOrderDateです。
ここでコードを単純に保つことが不可能でない限り、コードは簡単な方が理解しやすいことに注意してください。このクエリは私には簡単に思えます...ロジックは理解できますが、実際にそれを行う方法はわかりません! :(
他に必要な情報がありましたら、お尋ねください! ありがとうございました!
編集:それが役立つ場合、私は以前に作業するためにこの偽コードを与えられましたが、それは私を超えています. /バカ
SELECT <customer info>
FROM <customer table>
WHERE (SELECT COUNT(<order info>)
FROM <order table>
WHERE <customer info> = <current customer>
AND <date> < <target date>) = 0
AND (SELECT COUNT(<order info>
FROM <order table>
WHERE <customer info> = <current customer>
AND <date> > <target date>) > 0