-1
id
,ip
およびemail
という列を含むusers
というテーブルがあります。私は、同じIPからログインしている5人から10人のユーザーの間で、どれくらい多くのユーザーが次の基準を満たしているかを知りたいと思います。 - 結果としてid
、email
とcountID
2つのテーブルを最適な方法で結合する
select count(distinct id) as countID,
ip
from users
group by ip
having count(distinct id) between 5 and 10
は、私は次の列を取得したい:これまでのところ私はこのクエリを持っています。私は上部のクエリで1つのテンポラリテーブルを作成し、それに続いてip
をキーとしてusers
テーブルと結合することを考えていましたが、約3百万行があるので時間がかかりすぎます。誰もがより良い解決策を考えることができますか?
これは尋ねられませんでしたか?サンプルデータと期待される出力を教えてください。なぜなら、10人のユーザが同じIPを使ってログインすると、10通のメールがあるからです。 –
@JuanCarlosOropeza前の答えから、私はちょうどcountIDとipを得ました。私が実際に必要とするのは、id、email、ountIDです。 –
2番目のテーブルは何ですか?私はこの質問に1つしか見ません。 –