我正在尝试使用滞后函数,因此我可以在不使用游标的情况下将一列与最后一列进行比较.但是,我需要比较的列必须使用别名,因为我正在使用3个联合.这是我要做的一个例子.
SELECT
'Y' AS paid,
lag(paid,1) over (ORDER BY salary) AS prev_paid
FROM pay
UNION
SELECT
'N' as paid,
lag(paid,1) over (ORDER BY salary) AS prev_paid
FROM not_paid
Run Code Online (Sandbox Code Playgroud)
我一直收到错误:PL/SQL:ORA-00904:"付费":无效的标识符
我怀疑你想要更像这样的东西:
SELECT paid, lag(paid,1) over (ORDER BY salary) AS prev_paid
FROM
(
SELECT 'Y' as paid, salary
FROM pay
UNION
SELECT 'N' as paid, salary
FROM not_paid
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1332 次 |
| 最近记录: |