###前提・実現したいこと
2つのカラムをキーとするテーブルで、特定の文字列を持つグループ以外を日別に集計しようとしています。
以下の販売履歴テーブルで顧客IDと来店回数で1グループとして、
(同じuser_idでもuser_id:1001,in_count:1で1件user_id:1001,in_count:2で1件と集計)
node内にはカンマ区切りで複数の項目が入る場合があり、nodeに「2_HPから選ぶ」が入っていないグループ数を集計したいです。
このテーブルの場合、1002以外のユーザー数として以下の結果を想定しています。
日付 人数
08-15 1
08-17 1
08-20 1
###発生している問題・エラーメッセージ
作成したSQLを試した所取り除こうとしている「2_HPから選ぶ」を含むグループも一緒に集計してしまっています。
###該当のソースコード
select date(tmp.create_date) as 日付 ,count(user_id) as 人数 from ( select user_id ,in_count ,node ,create_date from user_history group by user_id,in_count ) tmp where tmp.user_id <> any ( select user_id from user_history where node like '%2_HPから選ぶ%' ) and tmp.in_count <> any ( select in_count from user_history where node like '%2_HPから選ぶ%' ) group by date(tmp.create_date)
###試したこと
ANYが問題かとALLなども試しても出力したい結果となりませんでした。
お力をお借りできると嬉しいです。
よろしくお願いいたします。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/08/17 15:57
2017/08/18 00:18
2017/08/20 15:07