Oracle 数据库中执行SQL语句 出现 [Err] ORA-00936: 缺失表达式! 但在SQL server 中可以使用 大家帮帮忙
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle 数据库中执行SQL语句 出现 [Err] ORA-00936: 缺失表达式! 但在SQL server 中可以使用 大家帮帮忙相关的知识,希望对你有一定的参考价值。
select AAA.BMJC,(AAA.qf+AAA.sf) as YSBS,AAA.sf AS SSBS,convert(float(2),AAA.[sf])/convert(float(2),AAA.qf+AAA.sf) as cbl from(select com.BMJC BMJC, qf=(select count(*) from SF_YHXX Q where SUBSTRING(Q.BMBH,1,1) = com.BMBH),sf=(select count(*) from SF_SFXX Q where SUBSTRING(Q.BMBH,1,1) = com.BMBH and Q.MZBZ='0')from SF_QFXX qf,SYS_BMXX com where 1=1 and com.SZBS in (0,1) and SUBSTRING(qf.BMBH,1,1) = com.BMBH group by com.BMJC,com.BMBH) as AAA
convert在sqlserver中的作用与在oracle中的作用是不一样的目测你想要的是保留两位小数
oracle中应该使用round(AAA.sf,2),round(AAA.qf+AAA.sf,2)
如果末尾的0也需要显示的话 使用to_char函数
不好意思,只提供了方法,其实把你的需求说出来更好一点,因为我也不太了解sqlserver 参考技术A float()不是Oracle的函数, oracle 中可以使用to_number()函数转换成整形
以上是关于Oracle 数据库中执行SQL语句 出现 [Err] ORA-00936: 缺失表达式! 但在SQL server 中可以使用 大家帮帮忙的主要内容,如果未能解决你的问题,请参考以下文章
Oracle:PL/SQL中用SQL语句添加数据 中文出现乱码问题?[有图]
在Oracle中执行如下语句报在 FETCH 语句的 INTO 列表中值数量出现错误