各ユーザーのn番目の時系列の訪問日を返すTeradataSQLクエリを作成しようとしています。例えば、
user | visit_date
---------------------
a 1/1
b 1/10
c 1/20
a 1/3
a 1/4
b 1/5
c 1/15
b 1/9
> magic_query_for_Second_visit;
user | second
------------------
a 1/3
b 1/9
c 1/20
以下のようなことを試しましたが、Teradataは「順序付けられた分析関数はWHERE句で許可されていません」と叫びました。しばらく髪を引っ張ってきましたが、あまり進歩していません。誰かこれを見た?
select user,
row_number() over (partition by user order by visit_date desc) as rnum
from visitstable
where rnum = 2
除外するとwhere、私の結果は有望に見えます...必要なものを抽出できません!
user | visit_date | rnum
---------------------------
a 1/1 1
a 1/3 2
a 1/4 3
b 1/5 1
b 1/9 2
b 1/10 3
c 1/15 1
c 1/20 2
助けてくれてありがとう!