4
我一直在努力SQL
一段时间了。我必须建立一个查询来从表中返回第二个最高的ID。听起来很简单,特别是如果你找到了that link。如何将表别名传递给SQL中的子查询?
但是我有一个稍微复杂的查询:
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: Unknown identifier在p.column3
。 我明白为什么它这么说 - 它不承认p
作为表名称别名。
是否有可能将它传递给嵌套查询?
不幸的是,这是行不通的 – maialithar
为什么行得? – Laggel