修复了oracle sql查询的标题

修复了oracle sql查询的标题,sql,oracle-sqldeveloper,Sql,Oracle Sqldeveloper,我正在尝试编写一个select查询,在一个列中包含一个连接的列,列名称非常严格,并且没有撇号 这是主要思想 SELECT COLUMN1|| COLUMN2 || COLUMN3 AS 'AN ALIAS WITH MORE THAN 30 CHARACTER' FROM DUAL (AS)不起作用,并且因为我正在使用Oracle版本12,所以(“”)将触发一个错误(标识符太长) 有没有办法做到这一点 答案很简单:你不能。这叫做限制。不过,我不确定我是否理解您提到的12c数据库版本,因为它支持

我正在尝试编写一个select查询,在一个列中包含一个连接的列,列名称非常严格,并且没有撇号

这是主要思想

SELECT COLUMN1|| COLUMN2 || COLUMN3 AS 'AN ALIAS WITH MORE THAN 30 CHARACTER' FROM DUAL
(AS)不起作用,并且因为我正在使用Oracle版本12,所以(“”)将触发一个错误(标识符太长)


有没有办法做到这一点

答案很简单:你不能。这叫做限制。不过,我不确定我是否理解您提到的12c数据库版本,因为它支持超过30个字符的标识符,而较低版本(如11g)则不支持

例如:

SQL> select * From v$version where rownum = 1;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

SQL> select dummy as "an alias with more than 30 characters" from dual;
select dummy as "an alias with more than 30 characters" from dual
                *
ERROR at line 1:
ORA-00972: identifier is too long

SQL> select * From v$version where rownum = 1;

BANNER                                                                               CON_ID
-------------------------------------------------------------------------------- ----------
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production              0

SQL> select 'a234567890123456789012345678901234567890' "an alias with more than 30 characters" from dual;

an alias with more than 30 characters
----------------------------------------
a234567890123456789012345678901234567890

SQL>