Sql 我们可以在一列上添加多个别名吗?

Sql 我们可以在一列上添加多个别名吗?,sql,postgresql,codeigniter,alias,Sql,Postgresql,Codeigniter,Alias,我的问题很简单 不知何故,我想为查询中的单个列添加多个别名,该别名将与查询中的一起使用,我可以这样做吗? e、 g: 注意:我在postgre sql中使用的是codeigniter否,您不能向查询中的单个列添加多个别名。SQL的查询语法允许零个或一个别名;没有用于添加第二个的语法 当然,没有什么可以阻止您进行嵌套查询,并使用不同的别名选择同一字段两次。但是,这将在不同的名称下引入两个相同的列: select username as id , fullName as "Full Na

我的问题很简单

不知何故,我想为查询中的单个列添加多个别名,该别名将与查询中的一起使用,我可以这样做吗?

e、 g:


注意:我在postgre sql中使用的是codeigniter

否,您不能向查询中的单个列添加多个别名。SQL的查询语法允许零个或一个别名;没有用于添加第二个的语法

当然,没有什么可以阻止您进行嵌套查询,并使用不同的别名选择同一字段两次。但是,这将在不同的名称下引入两个相同的列:

select
    username as id
,   fullName as "Full Name"
,   lastLogin as "Last Login"
,   lastLogin as "second alias"
from (
    select
        username
    ,   fullname
    ,  (select login_date_time from login_log where login_id = ((select MAX(login_id) from login_log where username=users.username))) as lastLogin
    from table users
) nested
order by secondAlias

不可以,您不能向查询中的单个列添加多个别名。SQL的查询语法允许零个或一个别名;没有用于添加第二个的语法

当然,没有什么可以阻止您进行嵌套查询,并使用不同的别名选择同一字段两次。但是,这将在不同的名称下引入两个相同的列:

select
    username as id
,   fullName as "Full Name"
,   lastLogin as "Last Login"
,   lastLogin as "second alias"
from (
    select
        username
    ,   fullname
    ,  (select login_date_time from login_log where login_id = ((select MAX(login_id) from login_log where username=users.username))) as lastLogin
    from table users
) nested
order by secondAlias

不,这个语法无效,但我想知道什么?不,这个语法无效,但我想知道什么?