首页 新闻 会员 周边 捐助

求助在sql中多对多怎么建表?祝大家端午节快乐O(∩_∩)O~。

0
悬赏园豆:100 [已解决问题] 解决于 2016-06-10 20:49

小弟是公司的一名财务,业余爱好编程之类的,现在有个问题想请教各位。

我手上有生产车间的数据,见下图。

我头疼的是产品的工序多且不固定,在数据库中,产品和工序怎么关联?

我想要的结果是:当计划数下达后,根据工时和员工人数计算出产品完成的时间。

小弟有些基础但也仅限于基础,一碰到稍微复杂些的就没有头绪了,下面是我建的关系图,请大神们指点指点。万分感谢,再次祝端午节快乐。呵呵。。

 

不存在d的主页 不存在d | 初学一级 | 园豆:86
提问于:2016-06-09 10:35
< >
分享
最佳答案
1

你这样财务当不好,最后就会误入编程歧途的。我见过这样误入歧途的财务的...

 

这种事情给专业人士做,好过你自己研究几个月,真的就是业余研究研究好了。

我实际经验中,很少需要计算这个,因为一般工厂管理者口算分分钟内就可以给出了。

而采用电脑计算,因为无法考虑众多变量,出来的结果意义极小。除非你是很大的工厂,几万人这样的。

几百人的工厂我们那初中文化水平的厂长或者初中文化的工段长分分钟可以告诉你结果。

而几万人的工厂,你这结构又太基础。

 

硬要解释的话,你这结构就可以计算出来的,基本问题不大了。

大部分工厂甚至无需基础工序表。因为不同产品的工序(就算名字相同)价格也是不同的,可以认为就是不同的工序。

基础工序表无需价格字段,唯一存在的意义大概就是提供快捷输入功能。(下拉选项之类的)

收获园豆:100
爱编程的大叔 | 高人七级 |园豆:30844 | 2016-06-09 11:05

 是的,这个基础工序表确实没多大意义

我再去改改,。

 

价格想的是计算工资用,跟工时确实没啥关系

 

多谢大家的回复。

不存在d | 园豆:86 (初学一级) | 2016-06-09 16:23
其他回答(2)
0

我没理解员工人数和产品完成时间的关系。是不是工序中1个工时的任务,人多点就会提前完成?

幻天芒 | 园豆:37205 (高人七级) | 2016-06-09 10:50

因为订单数量是超过1的,比如工序1,订单数12000,实际需要工时数就是12000了,所以12人就是1000小时,120人就是100小时。

你没工厂经验?

支持(0) 反对(0) 爱编程的大叔 | 园豆:30844 (高人七级) | 2016-06-09 10:55

@爱编程的大叔: 真没工厂经验~ 不过觉得这样好绝对。假如订单数5,工人10(特殊场景哈,估计不会发生),半小时就能搞定? 我的理解是还是需要1个小时。大不了5个工人空闲。

支持(0) 反对(0) 幻天芒 | 园豆:37205 (高人七级) | 2016-06-09 10:58

@幻天芒: 计算工时意义本来就不大,没有哪家工厂接单的时候是歇业停工的,一般排产都是一个月后的事了。

而对于某个订单的生产实际需要时间(不计算排队时间),通常小学三年级工段长分分钟可以告诉你的。

支持(0) 反对(0) 爱编程的大叔 | 园豆:30844 (高人七级) | 2016-06-09 11:07

@爱编程的大叔: 没这经验。

就题来说,设计好的数据库已经能够算出来了。只是产品工序表不需要那么多冗余字段。让它纯粹一点。还有还应该有个人员工序关系表。

支持(0) 反对(0) 幻天芒 | 园豆:37205 (高人七级) | 2016-06-09 11:24
-1

这个表设计的倒也是可以,不过中午字段看着确实别扭。

要算工时,根据产品Id获取所有的产品工序记录,对工时求和。

CodeHsu | 园豆:5668 (大侠五级) | 2016-06-09 11:16

 现实是你前道工序做完就直接丢给下道工序去做,这样的求和相当于所有产品前道工序全部做完以后再转下道,不准确

支持(0) 反对(0) 不存在d | 园豆:86 (初学一级) | 2016-06-09 20:35
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册