IntervalMatch
O prefixo IntervalMatch estendido é usado para criar uma tabela comparando valores numéricos discretos com um ou mais intervalos numéricos e opcionalmente comparar os valores de uma ou várias chaves adicionais.
Syntax:
IntervalMatch (matchfield)(loadstatement | selectstatement )
IntervalMatch (matchfield,keyfield1 [ , keyfield2, ... keyfield5 ] ) (loadstatement | selectstatement )
O prefixo
Os intervalos podem estar sobrepostos e os valores discretos estarão vinculados a todos os intervalos correspondentes.
Quando o prefixo
Para evitar que limites de intervalo indefinidos sejam desconsiderados, você deve permitir que valores
Arguments:
Argumento | Descrição |
---|---|
|
O campo que contém os valores numéricos discretos a serem vinculados a intervalos. |
|
Campos que contêm os atributos adicionais a serem combinados na transformação. |
|
Deve resultar em uma tabela cujo primeiro campo contém o limite inferior de cada intervalo, o segundo contém o limite superior e, no caso do uso da correspondência de chaves, o terceiro e quaisquer campos seguintes contêm o(s) campo(s) chave presentes no comando IntervalMatch. Os intervalos estão sempre fechados, isto é, sempre contêm pontos de extremidade. Os limites não numéricos fazem com que o intervalo seja desconsiderado (indefinido). |
Example 1:
Nas duas tabelas abaixo, a primeira lista vários eventos discretos e a segunda define as horas inicial e final da produção de pedidos diferentes. Por meio do prefixo IntervalMatch, é possível conectar as duas tabelas logicamente para saber, por exemplo, quais pedidos foram afetados por algum contratempo, quais foram processados e em que turnos.
Agora, a tabela OrderLog contém uma coluna adicional: Time. O número de registros também é expandido.
Time | Start | End | Order |
---|---|---|---|
00:00 |
- | - | - |
01:18 | 01:00 | 03:35 | A |
02:23 | 01:00 | 03:35 | A |
04:15 | 02:30 | 07:58 | B |
04:15 | 03:04 | 10:27 | C |
08:00 | 03:04 | 10:27 | C |
08:00 | 07:23 | 11:43 | D |
11:43 | 07:23 |
11:43 |
D |
Example 2: (usando
Como no exemplo acima, adicionando ProductionLine como um campo chave.
Agora, uma tabela poderia ser criada:
ProductionLine | Time | Event | Comment | Order | Start | End |
---|---|---|---|---|---|---|
P1 |
00:00 |
0 | Start of shift 1 | - | - | - |
P2 | 01:00 | 0 | Start of shift 1 | - | - | - |
P1 | 01:18 | 1 | Line stop | A | 01:00 | 03:35 |
P1 | 02:23 | 2 | Line restart 50% | A | 01:00 | 03:35 |
P1 | 04:15 | 3 | Line speed 100% | B | 02:30 | 07:58 |
P1 | 04:15 | 3 | Line speed 100% | C | 03:04 | 10:27 |
P1 | 08:00 | 4 | Start of shift 2 | C | 03:04 | 10:27 |
P2 | 09:00 | 4 | Start of shift 2 | D | 07:23 | 11:43 |
P1 | 11:43 | 5 | End of production | - | - | - |
P2 | 11:43 | 5 | End of production | D | 07:23 | 11:43 |