SQL语句计算剩余数量
数据库结构如下名称需求时间需求数量起始库存数量当时库存数量笔记本2013-1-111010笔记本2013-2-12109笔记本2013-3-13107笔记本2013-4-...
数据库结构如下
名称 需求时间 需求数量 起始库存数量 当时库存数量
笔记本 2013-1-1 1 10 10
笔记本 2013-2-1 2 10 9
笔记本 2013-3-1 3 10 7
笔记本 2013-4-1 4 10 4
"当时库存数量"如何通过前面的数据计算出来? 展开
名称 需求时间 需求数量 起始库存数量 当时库存数量
笔记本 2013-1-1 1 10 10
笔记本 2013-2-1 2 10 9
笔记本 2013-3-1 3 10 7
笔记本 2013-4-1 4 10 4
"当时库存数量"如何通过前面的数据计算出来? 展开
2个回答
展开全部
SELECT
名称,需求时间,需求数量,起始库存数量,
(
SELECT B.当时库存数量- B.需求数量 FROM TABLE AS B WHERE B.名称 =A.名称 AND B.需求时间<A.需求时间 ORDER BY 需求时间 DESC FETCH FIRST 1 ROWS ONLY
)AS 当时库存数量
FROM TABLE AS A
楼主上面这样写试试,我针对的是DB2 的数据库,不过思路大致都是一样的:
在子查询中查出名称=当前名称,且时间<当前记录的时间,并按需求时间降序,取第一条记录,即最近的那条记录的 当时库存数量 -需求数量 即可得到所需!
更多追问追答
追问
我的数据库是MYSQL的不知道是否支持 FETCH FIRST 1 ROWS ONLY
追答
那就用 select limit 1 ....这种写法吧!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询