20
Select /*+USE_HASH( a b ) */ to_char(date, 'MM/DD/YYYY HH24:MI:SS') as LABEL,
ltrim(rtrim(substr(oled, 9, 16))) as VALUE,
from rrfh a, rrf b,
where ltrim(rtrim(substr(oled, 1, 9))) = 'stata kish' 
and a.xyz = b.xyz 

上述查询的“来自”(第 3 行)部分给了我ORA-00936 Missing EXPRESSION error. 请帮我

注意:: rrfh 表不包含任何数据。

4

5 回答 5

25

去掉逗号?

select /*+USE_HASH( a b ) */ to_char(date, 'MM/DD/YYYY HH24:MI:SS') as LABEL,
ltrim(rtrim(substr(oled, 9, 16))) as VALUE
from rrfh a, rrf b
where ltrim(rtrim(substr(oled, 1, 9))) = 'stata kish' 
and a.xyz = b.xyz

看看FROM

从多个表中选择您可以在 FROM 子句中包含多个表,方法是在每个表名之间用逗号列出表

于 2012-08-28T09:32:01.613 回答
1

删除 SELECT 语句末尾的逗号 (VALUE,),并删除 FROM 语句末尾的逗号 (rrf b,)

于 2017-01-11T11:54:45.913 回答
1

此答案不是上述问题的答案,但它与同一主题相关,可能对搜索相同错误的人有用。

当我执行下面提到的查询时,我遇到了同样的错误。

select OR.* from ORDER_REL_STAT OR

上述查询的问题是OR是关键字,因此当我用其他别名替换它时它期望其他值它工作正常。

于 2018-07-03T07:35:19.143 回答
0
update INC.PROV_CSP_DEMO_ADDR_TEMP pd 
set pd.practice_name = (
    select PRSQ_COMMENT FROM INC.CMC_PRSQ_SITE_QA PRSQ
    WHERE PRSQ.PRSQ_MCTR_ITEM = 'PRNM' 
    AND PRSQ.PRAD_ID = pd.provider_id
    AND PRSQ.PRAD_TYPE = pd.prov_addr_type
    AND ROWNUM = 1
)
于 2013-10-10T07:44:27.547 回答
0

每次插入/更新并且不使用单引号时都会发生这种情况。当变量为空时,将导致该错误。通过使用修复它''

假设第一个参数是一个空变量,这里是一个简单的例子:

错误的

nvl( ,0)

使固定

nvl('' ,0)

将您的查询放入数据库软件并检查该错误。通常这是一个简单的修复

于 2019-02-19T12:43:12.937 回答