select decode(VisitUserCount, 0, 0, trunc(VisitUserCount / sum(VisitUserCount) over() * 100, 2)) as VisitPerc
from table;
是原来的oracle 语句
而我把decode转换mysql后是
case VisitUserCount when 0 then 0 else truncate(VisitUserCount / sum(VisitUserCount) * 100 over(), 2) end as VisitPerc
可是问题来了
原来的oracle语句返回2条数据 而转成mysql后返回1条,这是为何 ,问题就出在sum(VisitUserCount) over() * 100
难道sum(VisitUserCount) over() * 100不等于sum(VisitUserCount) * 100?为什么少了一条记录呢???
在线苦等
没分了只能发在非技术区了 谁帮能我转发到高级技术区啊
------解决方案--------------------------------------------------------
count(*)是2条数据
而为什么显示出来的只有一条数据?