选择每列,但重命名其中之一

MOR*_*NOW 4 sql oracle

假设我有一个名为Alphabet的表。现在,我们将此表分为以下几列:

a,b,c,d,e ...,z

现在,我想从提到的表中选择所有内容(但是将f选为aaa),但是我不想这样做:

    select a, b, c, d, e, f as aaa, g ..., z
    from Alphabet;
Run Code Online (Sandbox Code Playgroud)

显然,如果列很多,则上述操作很麻烦。所以我在想是否可以做类似的事情

    select f as aaa, *
    from Alphabet;
Run Code Online (Sandbox Code Playgroud)

这可能是网上有很多信息,但是我不确定要搜索什么。这种选择有表达或名称吗?提前致谢

Gor*_*off 7

您可以这样写:

select a.f as aaa, a.*
from Alphabet a;
Run Code Online (Sandbox Code Playgroud)

请注意,输出集将包含faaa。尚不清楚这是否是您想要的。

要从f结果集中删除,您需要列出所需的所有列。

  • 就我的目的而言,我不能两者兼得。原件不得存在,因为输出正在发送到报告工具,并且两列最终都会显示。除了在 select 语句中显式包含表中的每个列名称并使用“as”子句作为我想要重命名的列之外,我想不出任何解决方案。 (2认同)