Skip to main content
Announcements
Live today at 11 AM ET. Get your questions about Qlik Connect answered, or just listen in. SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Splitting a field into multiple fields

Hi,

mayilvahanan

I have one query in this post.

Splitting a field into multiple fields

How can I use variable in this part for i=1 to 5 of the script?.. I want to make it for i =1 to max(test)... test is field in Tab2.

Tab2:

LOAD *,SubStringCount(Change1,'|') as test Inline [

Team1,Change1

A,10|20|30|40|50

];

for i=1 to 5

Tab23:

LOAD *, SubField(Change1,'|',$(i)) as fieldname$(i)

Resident Tab2 ;

NEXT i;

4 Replies
marcus_sommer

If you used subfield within a load without the third parameter qlik will be automatically loop through them - this meant you don't need your extra outside loop.

- Marcus

sunny_talwar

Maybe Generic load once you have the data in different rows?

The Generic Load

Anonymous
Not applicable
Author

Is it possible in some way for i =1 to max(test).

I tried several combinations of Subfield, Concat. I am not getting what I need. With the script above I am getting the right result but If I am able to put max the solution will become dynamic which is required.

Thanks

SAK

sunny_talwar

Are you trying to get this?

Capture.PNG

Tab2:

LOAD * Inline [

Team1,Change1

A,10|20|30|40|50

];

FinalTable:

LOAD Distinct Team1

Resident Tab2;

FOR i = 1 to SubStringCount(FieldValue('Change1', 1), '|') + 1

  Left Join (FinalTable)

  LOAD Team1,

  SubField(Change1, '|', $(i)) as FieldName$(i)

  Resident Tab2;

NEXT

DROP Table Tab2;