Delphi里面如何固定循环顺序

fortuneboy 2009-05-13 09:31:13
table1
orderid(工序) worktime(工作时间) materialid(产品编号) kind(工种)
1 2小时 c117 车
2 1.5小时 c117 磨
3 3小时 c117 洗
1 2小时 c114 划线
2 4小时 c114 磨
TABLE2
kind(工种) machine(机台)
车 123
磨 234
洗 345
划线 456
table1选择自动排序时按相同产品编号工序最长的优先级最高,最先排,工序长度相同的工作时间短的优先排,这个循环应该如何写?
最后得到表里面
table3
orderid(工序) worktime(工作时间) materialid(产品编号) kind(工种) machine(机台)
1 2小时 c117 车 123
2 1.5小时 c117 磨 234
3 3小时 c117 洗 345
1 2小时 c114 划线 456
2 4小时 c114 磨 234
请各位帮忙啊,谢谢了
...全文
125 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
fortuneboy 2009-05-13
  • 打赏
  • 举报
回复
table3里面
orderid(工序)worktime(工作时间materialid(产品编号)kind(工种) machine(机台) starttime(开始时间)endtime(结)
1 2小时 c117 车 123 2009-4-12 08:00 2009-4-12 10:00
2 1.5小时 c117 磨 234 2009-4-12 10:00 2009-4-12 11:30
3 3小时 c117 洗 345 2009-4-12 11:30 2009-4-12 14:30
1 2小时 c114 划线 456 2009-4-12 08:00 2009-4-12 10:00
2 4小时 c114 磨 234 2009-4-12 10:00 2009-4-12 14:00

第一个排的时候开始时间自己设定,结果如上表3所示
bdmh 2009-05-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 sparklerl 的回复:]
SQL codeselect a.orderid,a.worktime,a.materialid,a.kind,b.machine from table1 a LEFT OUTER JOIN table2 b on a.kind=b.kind order by a.materialid,a.orderid desc,worktime



不过你的worktime这麽表示的化排序就不好处理了
[/Quote]

对,worktime,如果你一定要对其按大小排序的话,建议修改一下字段类型吧,至于是小时还是分钟,你可以在程序中控制显示,数据库中就不要用字符行了
sparklerl 2009-05-13
  • 打赏
  • 举报
回复
select a.orderid,a.worktime,a.materialid,a.kind,b.machine from table1 a LEFT OUTER JOIN table2 b on a.kind=b.kind order by a.materialid,a.orderid desc,worktime


不过你的worktime这麽表示的化排序就不好处理了
sparklerl 2009-05-13
  • 打赏
  • 举报
回复
更多的信息 预期的效果是什么

也许大家有些小小的建议
fortuneboy 2009-05-13
  • 打赏
  • 举报
回复
是要考虑很多因素的,现在卡在算法上了,进行不下去了
僵哥 2009-05-13
  • 打赏
  • 举报
回复
生产排程,需要考虑很多因素.包括机器时间和人工时间,还有工序.

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧