select A.A1 as A1,A.A2 as A2,A1-A2 as A3 from A; 不好意思,我写错了,应该是上面的
SQL> select A.A1 as A1,A.A2 as A2,A1-A2 as A3 2 from ( 3 select 1 as A1,4 as A2,'a1' as A3 from dual 4 union all 5 select 2 as A1,5 as A2,'b2' as A3 from dual 6 union all 7 select 3 as A1,6 as A2,'c3' as A3 from dual 8 )A; A1 A2 A3 ---------- ---------- ---------- 1 4 -3 2 5 -3 3 6 -3
报的错误是“无效的标识符”吗? 别名不能在同一SELECT里使用,应当: select a1,a2,a1-a2 as a3 from ( select A.A1 as A1,A.A2 as A2 from A1); 否则就应当指定所属SCHEMA select A.A1 as A1,A.A2 as A2,A.A1-A.A2 as A3 from A1;
发了后才看到楼主的回复,这样应该没错误啊,楼主的错误是什么呢? 1* select aa.a1 as a1,aa.a2 as a2,(a1-a2) as a3 from aa SQL> / A1 A2 A3 ---------- ---------- ---------- 3 1 2 4 3 1 7 1 6
与数据类型关系不大,char的也可以,select a.a1 as a1,a.a2 as a2,(a1-a2) as a3 from aa2 a A1 A2 A3 ---------- ---------- ---------- 5 1 4 4 1 3 3 3 0 已选择3行。
不好意思,我写错了,应该是上面的
2 from (
3 select 1 as A1,4 as A2,'a1' as A3 from dual
4 union all
5 select 2 as A1,5 as A2,'b2' as A3 from dual
6 union all
7 select 3 as A1,6 as A2,'c3' as A3 from dual
8 )A; A1 A2 A3
---------- ---------- ----------
1 4 -3
2 5 -3
3 6 -3
别名不能在同一SELECT里使用,应当:
select a1,a2,a1-a2 as a3 from (
select A.A1 as A1,A.A2 as A2 from A1);
否则就应当指定所属SCHEMA
select A.A1 as A1,A.A2 as A2,A.A1-A.A2 as A3 from A1;
SQL> / A1 A2 A3
---------- ---------- ----------
3 1 2
4 3 1
7 1 6
from aa2 a
A1 A2 A3
---------- ---------- ----------
5 1 4
4 1 3
3 3 0
已选择3行。