2012-06-14 29 views
0

问题,如果else语句的内部,同时将Oracle查询在Oracle内部如果else语句我可以把oracle的语句SQL

select workgroupid, maxchats, 
     case 
     when a.maxchats ='-1' then 
    (select propvalue from ofproperty where name = 'xmpp.live.defaults.maxchats') 
     else 
      null (1) 
     end as aaaa 
from fpworkgroup a; 

当在1个位置即时得到错误IM将maxchats ,,

我该如何解决这个....?

帮助我.. 在此先感谢

+0

null(1):什么是(1)? –

+0

你的问题没有意义。请澄清。什么是(1)'?你在说这个“if/else”在哪里? 'property.propvalue'和'maxchats'的列类型是什么? – ean5533

+0

对不起,我试图显示的位置,所以我给那个数字... –

回答

2

很难理解你的问题,但它听起来就像你试图把maxchats到位的null (1)和它给你一个错误?

如果这是正确的,我猜测错误是fpworkgroup.maxchatsofproperty.propvalue有不同的列类型,不排队。 CASE的所有分支必须返回相同的列类型。例如,您不能从一个分支返回int,并且从另一分支返回varchar

您必须施放其中一个或另一个才能返回相同的类型。