在 sql 中的 * 后设置别名
setting an alias after the * in sql
有没有办法在星号 (*) 之后为 ORACLE SQL 中的不同列创建别名?
SELECT *
FROM TABLE
WHERE INDEX_1 = 5
AND INDEX_2 = 6
有没有办法在 * 之后设置别名?
SELECT * INDEX_1 AS INDECIES
FROM TABLE
WHERE INDEX_1 = 5
AND INDEX_2 = 6
;
没有
SELECT
语句的 select_list part in oracle grammar 的语法是这样的:
{ *
| { query_name.*
| [ schema. ]
{ table | view | materialized view } .*
| expr [ [ AS ] c_alias ]
}
[, { query_name.*
| [ schema. ]
{ table | view | materialized view } .*
| expr [ [ AS ] c_alias ]
}
]...
}
这意味着,要么是星号,要么是行源限定的星号和离散列。 *.
后没有 c_alias 标记
您 可以做的 是组合星号和字段列表,即使两个部分引用相同的 table,如下所示:
SELECT
TA1.*,
TA1.Column1 AS ColumnX
FROM Table1 TA1
various reasons 不鼓励使用星号。在临时查询中使用它是为了方便。
不过,也可以使用一点点 "mix":行源限定星号 AND(即非或)字段列表,例如
SQL> select d.*, e.ename
2 from dept d, emp e
3 where e.deptno = d.deptno
4 and d.deptno = 10;
DEPTNO DNAME LOC ENAME
---------- -------------- ------------- ----------
10 ACCOUNTING NEW YORK KING
10 ACCOUNTING NEW YORK CLARK
10 ACCOUNTING NEW YORK MILLER
10 ACCOUNTING NEW YORK
10 ACCOUNTING NEW YORK
SQL>
如果您使用的是 SQLPLUS,则可以使用 COLUMN 命令为任何列设置显示的标题,而不管它是使用星号还是按名称选择的。
例如
列 col_123 标题 'Account Number'.
SQLPLUS 参考在这里:https://docs.oracle.com/cd/B28359_01/server.111/b31189/ch12013.htm
有没有办法在星号 (*) 之后为 ORACLE SQL 中的不同列创建别名?
SELECT *
FROM TABLE
WHERE INDEX_1 = 5
AND INDEX_2 = 6
有没有办法在 * 之后设置别名?
SELECT * INDEX_1 AS INDECIES
FROM TABLE
WHERE INDEX_1 = 5
AND INDEX_2 = 6
;
没有
SELECT
语句的 select_list part in oracle grammar 的语法是这样的:
{ *
| { query_name.*
| [ schema. ]
{ table | view | materialized view } .*
| expr [ [ AS ] c_alias ]
}
[, { query_name.*
| [ schema. ]
{ table | view | materialized view } .*
| expr [ [ AS ] c_alias ]
}
]...
}
这意味着,要么是星号,要么是行源限定的星号和离散列。 *.
后没有 c_alias 标记您 可以做的 是组合星号和字段列表,即使两个部分引用相同的 table,如下所示:
SELECT
TA1.*,
TA1.Column1 AS ColumnX
FROM Table1 TA1
various reasons 不鼓励使用星号。在临时查询中使用它是为了方便。
不过,也可以使用一点点 "mix":行源限定星号 AND(即非或)字段列表,例如
SQL> select d.*, e.ename
2 from dept d, emp e
3 where e.deptno = d.deptno
4 and d.deptno = 10;
DEPTNO DNAME LOC ENAME
---------- -------------- ------------- ----------
10 ACCOUNTING NEW YORK KING
10 ACCOUNTING NEW YORK CLARK
10 ACCOUNTING NEW YORK MILLER
10 ACCOUNTING NEW YORK
10 ACCOUNTING NEW YORK
SQL>
如果您使用的是 SQLPLUS,则可以使用 COLUMN 命令为任何列设置显示的标题,而不管它是使用星号还是按名称选择的。
例如 列 col_123 标题 'Account Number'.
SQLPLUS 参考在这里:https://docs.oracle.com/cd/B28359_01/server.111/b31189/ch12013.htm