顧客がパスワードを忘れたときに、忘れたパスワードを取得するのではなく、新しいアカウントを作成する Web サイトに関連付けられたユーザーテーブルがあります。
顧客の電子メールアドレスを使用してユーザーテーブルをそれ自体に結合することにより、顧客が Web サイトに参加した回数を確認したいと思います。ID は、参加するたびに一意になり、アカウント ID が異なっています。
これが私のクエリです:
`Select Distinct
T1.Email as "eMail-01", T2.Email as "eMail-02", T1.AccountID as "AccountID-01", T2.AccountID as "AccountID-02", T1.UserID as "UserID-01", T2.UserID as "UserID-02"
From User T1
Left Join Users T2 on T1.eMail = T2.eMail
Where ( T2.eMail is not null ) and ( T2.eMail <> '' )
and ( T1.AccountID <> T2.AccountID )`
テーブルには約 60,000 のレコードがあり、AccountID パーミエーションの数に基づいて、多数のレコードが返されているようです。
たとえば、1 人の顧客が同じメール アドレスで 5 回登録したため、25 件のレコードが返されます (5 x 5)。このクエリを正しく書いているかどうかはわかりません。
クエリが非常に長く実行されています。