2

我在 oracle 中有 2 列,我正在合并如下

select SURVEY_AREA_7_12 || ' ' || HISSA_NO_7_12 
from XXCUS.XXACL_PN_FARMING_MST

这工作正常。但是当我将自己的名字添加到下面的列中时

select SURVEY_AREA_7_12 || ' ' || HISSA_NO_7_12 as 712_Column 
from XXCUS.XXACL_PN_FARMING_MST

它给出了错误

ORA-00923: 在预期的地方找不到 FROM 关键字

4

4 回答 4

3

问题是您的别名在第一个位置有一个数字;您可以引用它或更改别名:

Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
SQL> select 'a' as 1ABC from dual;
select 'a' as 1ABC from dual
              *
ERROR at line 1:
ORA-00923: FROM keyword not found where expected


SQL> select 'a' as "1ABC" from dual;

1ABC
----
a

与第一个位置不同的数字没有问题:

SQL> select 'a' as ABC1 from dual;

ABC1
----
a
于 2016-09-26T10:27:03.963 回答
2

尝试带双引号的标识符"

SELECT (SURVEY_AREA_7_12 || ' ' || HISSA_NO_7_12) AS "712_Column"
FROM XXCUS.XXACL_PN_FARMING_MST
于 2016-09-26T10:26:55.870 回答
2

712_Column是无效的 SQL 标识符。您不能以数字开头的标识符。如果你需要这个,你需要引用名称:

select SURVEY_AREA_7_12 || ' ' || HISSA_NO_7_12 as "712_Column"
from XXCUS.XXACL_PN_FARMING_MST
于 2016-09-26T10:27:05.897 回答
2

您正在使用以数字开头的别名。那就是问题所在。请使用 column_712 并执行...

于 2016-09-26T10:30:16.617 回答