MySQL_采购入库价格与在线售价监控_20161213

本文介绍了一种通过SQL查询来监控采购入库价格与在线售价的方法。该方法能够比较当前入库价格与上一次入库价格的变化幅度,并且还能对比当前入库价格与在线单品售价之间的差异,以确保价格的一致性和合理性。

c037采购入库价格与在线售价监控

##c037采购入库价格与在线售价监控
SELECT a.城市,a.产品ID,a.商品名称,a.入库日期,a.入库仓库,a.单价,a.总金额,a.采购人,b.单价 AS 上次入库单价,b.总金额 AS 上次总金额
,(a.单价-b.单价)/b.单价 AS 变化幅度1,(a.单价-c.单品售价)/c.单品售价 AS 变化幅度2
,c.单品售价,c.打包售价,DATE(b.入库日期) AS 上次入库日期,b.入库仓库 AS 上次入库仓库
FROM (#添加增长序列号
	SELECT a1.*,@i:=@i+1 AS ID1
	FROM (
		SELECT 城市,产品ID,商品名称,入库日期,入库仓库,单价,总金额,采购人,入库类型
		FROM `a006_stock_in_item`  
		WHERE 入库类型<>'退货' AND 城市='城市A' #AND  产品ID=10327
		ORDER BY 城市,产品ID,入库仓库,入库日期
	)AS a1,(SELECT (@i:=0) ) AS a2
) AS a
LEFT JOIN (#下错一行
	SELECT b1.*,@j:=@j+1 AS ID2
	FROM (
		SELECT 城市,产品ID,商品名称,入库日期,入库仓库,单价,总金额,采购人,入库类型
		FROM `a006_stock_in_item`  
		WHERE  入库类型<>'退货' AND 城市='城市A' #AND  产品ID=10327
		ORDER BY 城市,产品ID,入库仓库,入库日期
	)AS b1,(SELECT (@j:=1) ) AS b2 
) AS b ON a.城市=b.城市 AND a.产品ID=b.产品ID AND a.ID1=b.ID2 AND a.入库仓库=b.入库仓库
LEFT JOIN (#10表在线价格 市场改成仓库
	SELECT 城市,日期,产品ID,`单品售价`,`打包售价`,
	CASE WHEN 市场='城北市场' THEN '城北仓库' WHEN 市场='城南市场' THEN '城南仓库' #城市A
	ELSE NULL END AS 仓库
	FROM `a010_dynamic_产品` 
	WHERE 日期=DATE_ADD(CURRENT_DATE,INTERVAL -1 DAY)
	ORDER BY 城市,产品ID,仓库
) AS c ON a.产品ID=c.产品ID AND a.入库仓库=c.仓库 # and a.城市=c.城市 
WHERE DATE(a.入库日期)=DATE_ADD(CURRENT_DATE,INTERVAL -1 DAY) AND ABS((a.单价-b.单价)/b.单价)>=0.1 AND  (a.单价-c.单品售价)<0
ORDER BY a.城市,ABS((a.单价-b.单价)/b.单价) DESC

  

转载于:https://www.cnblogs.com/Mr-Cxy/p/6171898.html

课程设计大作业: 进销存管理系统是对企业生产经营中物料流、资金流进行条码全程跟踪管理,从接获订单合同开始,进入物料采购入库、领用到产品完工入库、交货、回收货款、支付原材料款等,每一步都为您提供详尽准确的数据。有效辅助企业解决业务管理、分销管理、存货管理、营销计划的执行和监控、统计信息的收集等方面的业务问题。 本次课程设计按步骤逐步实现一个简单的进销存管理系统。 步骤一:进销存功能实体类设计 了解进销存管理系统的功能,设计一个简易版的进销存管理系统。根据系统功能设计涉及的实体类,建议至少包含以下信息: 1、商品信息,包括商品编号、商品名称、建议售价、一般成本价、当前库存、备注等字段; 2、采购入库信息,包括采购订单编号、商品编号、采购数量、采购成本、采购时间、采购人、供应商等字段; 3、销售出库信息,包括销售订单编号、客户名称、销售人、销售总金额、销售时间,以及销售的商品明细包括商品编号、商品名称、销售价格、销售数量等。 其他功能和相关类请自行设计。 步骤二:基于文件IO的数据存储 在进行程序设计时,应遵循程序指令和程序数据分离的原则,程序数据可保存在单独的文件或数据库中。 为步骤一中设计的实体类实现基于文件IO的数据存储。 1、为每个实体类提供txt或Excel格式的文件存储或数据库MySql)存储; 2、自行设计文件中数据的存储格式,确保能完整保存实体类的所有字段信息; 3、编码实现文件读写功能,能够进行数据的加载和保存。 步骤三:增删改查等服务封装 根据进销存系统的功能,设计并实现对实体类的常用操作,建议至少包括以下功能: 1、对商品的操作: a. 列查看所有商品信息; b. 根据商品编号,检索查看某商品具体信息,包括商品基本信息及相关进出库记录; c. 添加商品信息,商品编号不可重复; d. 修改某商品信息,其中商品编号及库存不可修改; e. 删除某商品信息,库存不为0时不可删除; 2、对采购入库信息的操作: a. 列查看所有入库信息; b. 根据采购订单编号或商品编号检索入库信息; c. 添加采购入库信息,采购订单编号不可重复,采购数据同步到商品库存; d. 修改采购入库信息,采购订单编号不可修改,商品编号和采购数量可不修改; e. 删除采购入库信息,删除的采购数据同步到商品库存; 3、对销售出库信息的操作: a. 列查看所有出库信息,注意一个销售出库订单可包含多个商品,请设计良好的展示方式; b. 根据销售订单编号或商品编号检索出库信息; c. 添加销售出库信息,销售订单编号不可重复,订单总金额根据销售商品明细自动计算,销售数据同步到商品库存; d. 修改销售出库信息,销售订单编号不可修改,商品编号和销售数量可不修改; e. 删除销售出库信息,删除的销售数据同步到商品库存; 步骤四:基于控制台的功能交互 根据进销存系统的功能,设计一套基于控制台命令行的交互方式,让用户可以方便地使用步骤三中的各项功能。 可参考如下的交互命令设计: 命令 功能说明 product list 列查看所有商品信息 product view [商品编号] 根据商品编号查看某商品具体信息 product add 添加商品信息,后续用户根据提示依次录入商品各字段值 product edit [商品编号] 根据商品编号修改某商品信息,后续用户根据提示依次录入商品各字段值 product delete [商品编号] 根据商品编号删除某商品信息 purchase list 列查看所有采购入库信息 purchase list [商品编号] 根据商品编号检索所有该商品采购入库信息 purchase view [采购订单编号] 根据采购订单编号查看采购入库具体信息 purchase add 添加采购入库信息,后续用户根据提示依次录入各字段值 purchase edit [采购订单编号] 根据采购订单编号修改采购入库信息,后续用户根据提示依次录入各字段值 purchase delete [采购订单编号] 根据采购订单编号删除采购入库信息 sale list 列查看所有销售出库信息 sale list [商品编号] 根据商品编号检索所有该商品销售出库信息 sale view [销售订单编号] 根据销售订单编号查看销售出库具体信息 sale add 添加销售出库信息,后续用户根据提示依次录入各字段值及多个商品的销售明细 sale edit [销售订单编号] 根据销售订单编号修改销售出库信息,后续用户根据提示依次录入各字段值 sale delete [销售订单编号] 根据销售订单编号删除销售出库信息 步骤五:图形界面设计实现 为本进销存系统设计一套美观的图形界面,实现简单易用的功能交互逻辑,覆盖以上步骤中设计的功能。
06-12
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值