【问题标题】:Use Column Alias In Select Statement Calculation Oracle SQL [duplicate]在选择语句计算Oracle SQL中使用列别名[重复]
【发布时间】:2012-07-03 17:14:21
【问题描述】:

是否可以做类似select 1 as foo, foo+1 from dual的事情

这将返回ERROR at line 1: ORA-00904: "FOO": invalid identifier

我有一个组成列的冗长计算,我希望能够轻松地使用该值在差异列中进行计算

【问题讨论】:

    标签: sql oracle oracle11g alias


    【解决方案1】:

    您不能直接使用别名。一种方法是使用派生表:

    SELECT foo, foo+1
    FROM (SELECT 1 AS foo FROM dual) AS T
    

    【讨论】:

    • 如果可能的话我正在寻找替代品,在这种情况下添加另一个派生表会有点麻烦
    • @BrandonKreisel 除非您想为基本查询定义视图,否则其他替代方案几乎可以归结为相同的方法(使用 WITH 子句 SQL 等)
    • @Chandu - 确切地说,使用视图、CTE、派生表或其他物理表
    • 那么好吧。感谢各位大侠的帮助,不胜感激
    猜你喜欢
    • 1970-01-01
    • 2021-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多