我有一个表库存,可以按特定顺序在多个位置存储库存物料。假设我在表中有以下记录:
Item BBD Location Sequence P1 2016-04-13 LOC_01 1 P1 2016-04-16 LOC_01 2 P1 2016-04-14 LOC_01 3 P1 2016-04-12 LOC_02 1 P1 2016-04-14 LOC_02 2 P1 2016-04-15 LOC_02 3
“序列”列定义项目位置的序列(或位置)。考虑到每个位置只能按FIFO顺序访问,我的目标是按BBD对记录进行排序,使每个位置的所有项目必须始终按顺序检索。例如,对于上面的记录,结果应如下所示:
Item BBD Location Sequence P1 2016-04-12 LOC_02 1 P1 2016-04-13 LOC_01 1 P1 2016-04-14 LOC_02 2 P1 2016-04-15 LOC_02 3 P1 2016-04-16 LOC_01 2 P1 2016-04-14 LOC_01 3
我能够,以及如何使用sql查询执行此操作?
编辑:我不能简单地执行order by bbd, sequence
或order by sequence, bbd
因为它会破坏第一种情况下某个位置中项目的顺序,或者逐行返回项目中的位置第二种情况。基本上我只能从前面访问每个位置,我必须首先在这些位置检索最旧的BBD库存。结果应该让我尽可能深地挖掘到一个位置,如果它有最老的BBD库存然后让我去另一个位置的前面有第二个最老的BBD库存并挖掘它等等。