2016-09-26 83 views
2

我有2列在Oracle中,我很喜欢合并下面甲骨文合并列给错误

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关键字未找到预期

回答

2

712_Column是无效的SQL标识符。您不能用数字开始标识符。如果您需要此名称,则需要引用该名称:

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

我不能使用单个'''引用? – BNN

+0

@nad:否。单引号是SQL中的字符串常量。双引号是标识符。有关详细信息,请参见手册中的“Oracle SQL的基本元素”一节:[此处](https://docs.oracle.com/database/121/SQLRF/sql_elements003.htm#SQLRF00217)和[here](https:/ /docs.oracle.com/database/121/SQLRF/sql_elements008.htm#SQLRF00223) –

+0

,同时在我的C#代码中添加此代码,如下所示:OracleDataAdapter da712 = new OracleDataAdapter(“SELECT(survey_area_7_12 ||''|| hissa_no_7_12)AS “712_Column”FROM xxcus.xxacl_pn_farming_mst“,ObjPriCon);'我得到错误**)期望** – BNN

2

尝试使用双标识报价"

SELECT (SURVEY_AREA_7_12 || ' ' || HISSA_NO_7_12) AS "712_Column" 
FROM XXCUS.XXACL_PN_FARMING_MST 
+0

感谢它的工作。 – BNN

+0

不能使用单引号'''? – BNN

+0

@nad:单引号指的是一个字符值,就像你在select中用来添加空格一样'''' – Arulkumar

3

问题是y我们的别名有一个数字在第一位;你可以给它或改变别名:

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 
+0

是的,由于它的数字没有被执行/执行 – BNN

2

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