私はSQL
しばらくの間苦労してきました。テーブルから 2 番目に高い ID を返すクエリを作成する必要があります。特にそのリンクを見つけた場合は、簡単に聞こえます。
しかし、もう少し複雑なクエリがあります。
SELECT
p.column1,
p.column2,
p.column3,
p.column4,
(
SELECT
p.column1
FROM
p_table p
WHERE
p.column2 = (
SELECT
id
FROM (
SELECT
id,
RANK() OVER (ORDER BY id DESC) rank_id
FROM
other_table
WHERE
field = p.column3
)
WHERE
rank_id = 2
)
) AS sth
FROM ...
Oracle は、ORA-00904: 不明な識別子を示していp.column3
ます。なぜそう言っているのか理解しています-p
テーブル名のエイリアスとして認識されません。
ネストされたクエリに渡すことは可能ですか?