‘壹’ sql能否实现如同EXCEL中规划求解的功能又该如何实现呢能否请大神指导一下怎么做
需要解决的问题。某玩具厂有三个车间,计划生产甲、乙、丙三种玩具,要求三个车间生产同一种玩具的数量相同,并且要按照规定的时间内完成,每个车间所给的时间不一样。其他信息如下图所示。求能获得最大利润的最佳生产方案。
2
建立数学模型。假设每个车间分别生产甲玩具x件,乙玩具y件,丙玩具z件,那么我们所关注的目标表达式就是:最大利润=156x+130y+121z,约束条件是:x,y,z≥0,2x+y+z≤200,x+2y+z≤240,x+y+2z≤280。打开excel,输入下列数据。
3
如何在工作表中设置问题条件?先设置目标单元格,即最大利润,把它放在E2单元格上,可变单元格放置计划生产各种玩具的件数,这里把它放在C11:E11区域。F5:F7是约束单元格,要对它们的值进行约束。单击E2,在编辑框输入如图所示的公式。注意,表示绝对引用的美元符号,可以单击F4功能键添加。
4
单击F5单击格式,在编辑栏上输入公式:=$C$5*$C$11+$D$5*$D$11+$E$5*$E$11。绝对引用单元格有一个好处,显示的单元格位置变化时,引用的数据没改变。
把F5的公式利用填充柄复制到F6,F7单元格。然后更改行号。F6的公式是“=$C$6*$C$11+$D$6*$D$11+$E$6*$E$11”,F7的公式为“=$C$7*$C$11+$D$7*$D$11+$E$7*$E$11”。
如何使用规划求解功能?单击工具菜单,如果看不到规划求解选项不要慌,先选加载宏。然后勾选规划求解,确定。
指定目标单元格。一种方法是先选中目标单元格E2,单击工具---规划求解。另一种先单击工具---规划求解,再输入目标单元格名称。
输入可变单元格区域。比较快的方法是,单击折叠框,用鼠标选中可变单元格区域:$C$11:$E$11。注意勾选最大值哦。
设置条件不等式。单击添加,单击折叠框,选择单元格和不等号,单击关闭窗口,接着添加另一个条件。
问题的答案。单击求解按钮,最大利润和最佳方案就显示在目标单元格和可变单元格上面了。
单击保存规划求解结果,确定。
显而易见,每个车间甲、乙、丙玩具各生产20件,60件和100件时,可以获得最大利润。这就是我们要找的最佳方案。
如何输出报表?单击求解按钮后出现一个选择框,在报告框里,用鼠标和shift键全部选中3个,勾选保存。单击确定。系统自动产生3个报表。
打开excel下面的工作表标签运算结果报告1,可以看到全貌,同样的可以看到另两个报表。
‘贰’ 利用access SQL语句求股票的实际收益
--试试下面的sql语句
selectb.股票名称,sum(b.收益)已收益,sum(b.持有数量)当前持有数量from(select股票名称,(casewhena.投资行为='买'thena.交易数量else(-1)*a.交易数量end)持有数量,(casewhena.投资行为='买'then(-1)*a.交易金额elsea.交易金额end)收益froma)bgroupbyb.股票名称
‘叁’ 求教:某销售公司销售管理数据库的SQL语句题(查询业务员的销售业绩和计算提成)
1)
UPDATE 出库单
SET 出库单金额=新的金额
WHERE 出库单编号=要更新的出库单编号
2)
SELECT 客户编号,SUM(出库单金额) AS 总购买额 FROM 出库单
GROUP BY 客户编号
3)
SELECT Y.业务员编号,Y.业务员姓名,SUM(K.出库单金额) AS 销售业绩 FROM 业务员 Y
INNER JOIN 客户 C ON Y.业务员编号=C.所属业务员编号
INNER JOIN 出库单 K ON K.客户编号=C.客户编号
GROUP BY Y.业务员编号,Y.业务员姓名
4)
SELECT Y.业务员编号,Y.业务员姓名,(SUM(K.出库单金额)*Y.提成比率) AS 提成奖金 FROM 业务员 Y
INNER JOIN 客户 C ON Y.业务员编号=C.所属业务员编号
INNER JOIN 出库单 K ON K.客户编号=C.客户编号
GROUP BY Y.业务员编号,Y.业务员姓名,Y.提成比率
‘肆’ 计算销售利润 现在有两张表(销售表,销售从表) 用sql语句写出
SELECT a.销售类别,SUM(b.总金额)
FROM 销售表 a
INNER JOIN 销售从表 b on a.销售单号=b.销售单号
GROUP BY a.销售类别
‘伍’ PL/SQL存储过程,输入年份、月份,查询所销售商品的销售总金额,销售总量,销售总利润。
select 商品,sum(销售金额) 销售总金额,sum(销售量)销售总量,sum(利润) 销售总利润
from 销售表
group by 商品;
‘陆’ 在SQL Server 2000中,设某数据库中有商品表(商品号,商品名,进货价格,商品号为主码;销售表(商品号,销
CREATE TRIGGER update_sale
ON销售表 FORUPDATE
FOREACHROW
ASBEGIN
UPDATE Table_sale SET 本次利润=销售价格-(SELECT 进货价格 FROM 产品表)
END
CREATE TRIGGER Insert_sale
ON销售表FOR INSERT
FOREACHROW
ASBEGIN
INSERT INTO销售表VALUES(new.商品号,new.销售时间, new.销售数量,new.销售价格)
END
请说话算数!
‘柒’ 怎么让sql自动读取数据计算单件利润(以下是我建的表)
--你的表结构被我更改了以及自动计算单件利润的脚本如下所示:
go
createtable宠物用品表(
宠物用品名char(20)primarykey,
库存数量float,
零售价格float,
进货价float,
单件利润float,
类别char(20)
)
go
createtriggertr_cwyp--触发器
on宠物用品表
afterupdate,insert
as
begin
ifupdate(零售价格)orupdate(进货价)
begin
update宠物用品表set单件利润=零售价格-进货价where宠物用品名=(select宠物用品名frominserted);
end
end
go
insertinto宠物用品表(宠物用品名,库存数量,零售价格,进货价,类别)values('泰国猫粮',549,421,300,'干粮系列');
insertinto宠物用品表(宠物用品名,库存数量,零售价格,进货价,类别)values('英国狗粮',439,400,290,'干粮系列');
insertinto宠物用品表(宠物用品名,库存数量,零售价格,进货价,类别)values('日本鱼粮',688,100,60,'干粮系列');
insertinto宠物用品表(宠物用品名,库存数量,零售价格,进货价,类别)values('比利时鸟粮',1000,150,80,'干粮系列');
insertinto宠物用品表(宠物用品名,库存数量,零售价格,进货价,类别)values('宠物除虫剂',800,55,30,'医疗用品');
insertinto宠物用品表(宠物用品名,库存数量,零售价格,进货价,类别)values('宠物清洁剂',931,40,25,'环境清洁');
go
select*from宠物用品表
go
‘捌’ 请教,sql查询时如何用sumif函数
楼主好,首先SQL中是没有SUMIF函数的,所以你没有办法直接实现SUMIF的功能。而且楼主理解有问题,SUMIF函数是把一列的数值先求和后再判定。比如你对利润求和,然后判定求和后的数值是>50000的为优质客户,否则不是。
如果按照你详细问题的说法,其实很简单:
select sum(盈利) as '盈利' from 盈利表
where 盈利>0
如果你需要在此加上其他维度,例如区域(假设盈利表中有区域字段):
select 区域,sum(盈利) as '盈利' from 盈利表
where 盈利>0
group by 区域