Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
sandrinejesus
Contributor II
Contributor II

Ajuda com SubField

Bom dia Pessoal. 


Tenho uma base que carrego do Oracle que grava um campo de acesso de entrada, porém ele grava no mesmo campo mais de uma pessoa apenas separado por virgula. Ex;  LSTAACOMPANTE  = 5,6 Preciso contar individualmente cada numero como um acesso distinto, tentei com o subfield da seguinte forma:

SubField(LSTACOMPANHANTE,',') as ACESSOACOMPAHANTE,

Mas não deu certo pq ele conta apenas o primeiro registro e o que vem depois da virgula se perde. Conseguem me ajudar? 

Abraços, 

Labels (2)
2 Replies
TiagoCardoso
Creator II
Creator II

Bom dia @sandrinejesus 

Pensei nisto por ora, creio que pode lhe ajudar.

table_temp:
LOAD * Inline[
dimensao | valor
1,2 | 10
3,4 | 20
5 | 30
6 | 40 
7,8 | 50
] (delimiter is '|');

NOCONCATENATE 

table:
LOAD
	SUBFIELD (dimensao,',',1) AS dimensao,
    valor
RESIDENT table_temp;

CONCATENATE

LOAD
	SUBFIELD(dimensao,',',2) AS dimensao,
    valor
RESIDENT table_temp WHERE SUBFIELD(dimensao,',',2)<> NULL();


DROP TABLE table_temp;
fosuzuki
Partner - Specialist III
Partner - Specialist III

Olá,

A sintaxe parece ok.

Consegue postar o código completo do LOAD? Pode ser que tenha algo impedindo o funcionamento correto da função.