from
(select data,time from 表名 where id=1) a,
(select data,time from 表名 where id=2) b
where a.time=b.time
你看是这个意思吗?
不过这样的话数据要求比较严格,同一时间id为1为2的只能有1条,多了会出错,但是大概意思就是上边所写
你需要知道在mysql数据库中是没有行,这一概念的。所以说,你让下一行减去上一行这个本身就是不成立的。处理的办法是把数据输出之后,用程序比如PHP。等等进行处理输出。单独用sql是无法实现的。不太明白,你的查询结果不应该放到一起,给个例子吧?
select 日期, sum(case when 销售方式 = '购买' then 金额 end) 购买,sum(case when 销售方式 = '退货' then 金额 end) 退货,
sum(case when 销售方式 = '退货' then -1 else 1 end * 金额) 实际销售额,营业员
from B
group by 日期,营业员
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)