Sql 在同一选择中使用列别名
如何在同一查询中的其他位置使用列别名?在甲骨文中可能吗 使用EMP_ID的示例:Sql 在同一选择中使用列别名,sql,oracle,Sql,Oracle,如何在同一查询中的其他位置使用列别名?在甲骨文中可能吗 使用EMP_ID的示例: SELECT t1.DATE, t2.NAME, t1.ID, TO_NUMBER( SUBSTR( t1.NUMBER_ID, - 6) || TRIM( TO_CHAR( SUBSTR(EMP_ID, 3, 2), '00' ) ), '999999999999') AS CONTRACT, t2.ADDRESS, CASE WHEN SUBSTR(t2.COD_EM
SELECT
t1.DATE, t2.NAME, t1.ID,
TO_NUMBER( SUBSTR( t1.NUMBER_ID, - 6)
|| TRIM( TO_CHAR( SUBSTR(EMP_ID, 3, 2), '00' ) ), '999999999999') AS CONTRACT,
t2.ADDRESS,
CASE WHEN SUBSTR(t2.COD_EMP, 0, 2) != 'PG' THEN 'PG00'
|| t2.COD_EMP ELSE t2.COD_EMP END AS EMP_ID
FROM
TABLE_01 t1
INNER JOIN TABLE_02 t2 .....
如果选中,您将看到只允许在order by
子句中使用它:
指定列表达式的别名。Oracle数据库将使用
此别名位于结果集的列标题中。AS关键字是
可选。别名有效地重命名了的“选择”列表项
查询的持续时间别名可在order\u by\u子句中使用
但查询中没有其他子句
根据标准SQL:任何特定的
SELECT
子句中的所有列都是“像”并行计算的(以允许某些实现精确地进行计算)
因此,您不允许依赖同一
SELECT
子句中定义的另一列,因为它的值尚未计算。不,您不能,除非您有一个带有别名列的子查询,否则您可以在order by
子句中使用它。的可能重复(以及许多其他)