私は何らかの理由でこれについて狂ったように混乱しています。
基本的に、2010 年以降の 1 か月あたりの新規顧客数を見つけるクエリを探しています。
私は顧客の電子メール アドレス (email)、すべての注文 (OrderID)、および注文日 (OrderDate) を持っています。テーブルは tblOrder です。
「新規顧客」とは、(a) その日付/月の前に注文したことがない人、および (b)その日付/月の後に少なくとも 1 回注文した人であることを知っています。
出力を最終的に次のようにしたいと思いますが、より単純な方法の方が優れています。
01 02 03 04 05 06 07 08 09 10 11 12
2010 ## ## ## ## ## ## ## ## ## ## ## ##
2011 ## ## ## ## ## ## ## ## ## ## ## ##
2012 ## ## ## ## ## ## ## ## ## ## ## ##
そして、私はこれを使用するように与えられましたが、みんな、私は真剣にプログラマーではありません。一部の人にとっては単純に見えるかもしれませんが、それは私の頭を超えていて、まったくクリックしていません。
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
これも有効なSQLではないことはわかっています。だから私はそれをどうするかわかりません。そして、私が最終的に望むようにすべてを数えて合計するのではなく、該当する顧客 (入力された月の前に注文していない顧客) のリストを引き出すだけだと思います。