Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Senhores,
Boa tarde, acredito que eu esteja com uma dúvida simples,
Os campos: SEQUENCIA, CAMPO1, CAMPO2 já existem no meu banco de dados, quero criar a coluna CAMPO3
A lógica é pra retornar pro CAMPO3
Se CAMPO1 = X, retornar CAMPO2; (essa parte eu consigo com um if(CAMPO1 = 'X', CAMPO2)
Caso contrário, retornar o "último" valor de CAMPO2 em que o CAMPO1 tenha um X (essa parte que não consigo)
Segue abaixo um EXCEL que fiz pra esboçar o problema:
SEQUENCIA | CAMPO1 | CAMPO2 | CAMPO3 |
1 | X | ITEM 1 | ITEM 1 |
2 | X | ITEM 2 | ITEM 2 |
3 | ITEM 3 | ITEM 2 | |
4 | ITEM 4 | ITEM 2 | |
5 | X | ITEM 5 | ITEM 5 |
6 | ITEM 6 | ITEM 5 | |
7 | X | ITEM 7 | ITEM 7 |
8 | X | ITEM 8 | ITEM 8 |
9 | ITEM 9 | ITEM 8 | |
10 | ITEM 10 | ITEM 8 |
tabela:
Load SEQUENCIA, CAMPO1, CAMPO2 Inline [
SEQUENCIA, CAMPO1, CAMPO2, CAMPO3
1 ,X ,ITEM 1 ,ITEM 1
2 ,X ,ITEM 2 ,ITEM 2
3 , ,ITEM 3 ,ITEM 2
4 , ,ITEM 4 ,ITEM 2
5 ,X ,ITEM 5 ,ITEM 5
6 , ,ITEM 6 ,ITEM 5
7 ,X ,ITEM 7 ,ITEM 7
8 ,X ,ITEM 8 ,ITEM 8
9 , ,ITEM 9 ,ITEM 8
10 , ,ITEM 10, ITEM 8
];
Load
SEQUENCIA,
CAMPO1,
CAMPO2,
IF(CAMPO1 = 'X',
CAMPO2,
Peek('CAMPO3')
)
AS CAMPO3
Resident tabela Order BY SEQUENCIA;
DROP Table tabela;
tabela:
Load SEQUENCIA, CAMPO1, CAMPO2 Inline [
SEQUENCIA, CAMPO1, CAMPO2, CAMPO3
1 ,X ,ITEM 1 ,ITEM 1
2 ,X ,ITEM 2 ,ITEM 2
3 , ,ITEM 3 ,ITEM 2
4 , ,ITEM 4 ,ITEM 2
5 ,X ,ITEM 5 ,ITEM 5
6 , ,ITEM 6 ,ITEM 5
7 ,X ,ITEM 7 ,ITEM 7
8 ,X ,ITEM 8 ,ITEM 8
9 , ,ITEM 9 ,ITEM 8
10 , ,ITEM 10, ITEM 8
];
Load
SEQUENCIA,
CAMPO1,
CAMPO2,
IF(CAMPO1 = 'X',
CAMPO2,
Peek('CAMPO3')
)
AS CAMPO3
Resident tabela Order BY SEQUENCIA;
DROP Table tabela;