41480


今の所、下記二つの方法を試したのですが  
エラーが発生してしまいます。  
列名を別名で表示させる方法をご存知の方がいればお伺いしたいです。

[code]

    select worker.empno ||',' || worker.ename|| ',' ||  
    worker.hiredate||','|| mgr.ename "Employee Number, Employee Name,Hiredate, Mgr Name."
    from emp worker , emp mgr
    where worker.mgr=mgr.empno;
    
[/code]

エラー文  
ERROR at line 1:  
ORA-00972: identifier is too long

[code]

    select worker.empno AS EmployeeNumber,worker.ename,worker.hiredate,mgr.ename
    from emp worker , emp mgr
    where worker.mgr=mgr.empno;
    
[/code]

エラー文  
ERROR at line 1:  
ORA-00923: FROM keyword not found where expected


CC BY-SA 3.0
2018-02-05T04:03:52.863
41478
2018-02-05T04:42:02.033
25686
question
sql oracle
オラクルSQLで列名を別名で表示させる方法


前者のSQLは`AS`が省略されていますが`"Employee Number, Employee Name,Hiredate, Mgr
Name."`という50文字の識別子になっています。

Oracle 12.2以前では、30文字を超える識別子は付けられません。  
12.2以降は128バイトまで識別子に使えるため`ORA-00972`は出なくなります。  
[本家SOの回答](https://stackoverflow.com/a/3085571)

後者のSQLは私の環境ではエラーが再現できませんでした。  
改行が入っておらず`mgr.ename`と`from`がくっついていたり、全角スペースが混入していないでしょうか？


CC BY-SA 3.0
2018-02-05T04:42:02.033
41480
2018-02-05T04:42:02.033
9820
41478
answer