Qlik Community

Ask a Question

New to Qlik Sense

If you’re new to Qlik Sense, start with this Discussion Board and get up-to-speed quickly.

Announcements
Join us for a live Q&A! September 21, 10 AM ET - Onboarding Fast in Qlik Sense SaaS! REGISTER
cancel
Showing results for 
Search instead for 
Did you mean: 
vangurideepu
Creator
Creator

Joins, keeps and concatenation & applymap()

Hi Friends,

How to decide while building the data model, which one is best out of them Joins, keeps and concatenation & applymap().

sorry for asking silly question, please don't hesitate.

Thanks in advance.

6 Replies
marcus_sommer
MVP & Luminary
MVP & Luminary

There is no general answer possible because it always depend on the data and how they in the end should be displayed. Furthermore quite often you will need to combine all of these approaches (and some more) to build a suitable datamodel.

- Marcus

YoussefBelloum
Champion
Champion

Hi,

most of the time, you don't really choose, because they are really different.

so I invite you to read this to understand each one of these techniques: (very well explained)

Understanding Join, Keep and Concatenate

for the mapping load and the applymap(), read this:

https://help.qlik.com/en-US/qlikview/November2017/Subsystems/Client/Content/Scripting/ScriptPrefixes...

https://help.qlik.com/en-US/qlikview/November2017/Subsystems/Client/Content/Scripting/MappingFunctio...

If you have already read all this and you understand each of these techniques, you should share with us your tables structures (sample data) and the exptected output, MAYBE you will have to choose between two techniques and maybe only one technique will be suitable for you problem.

ychaitanya
Creator III
Creator III

Hey Pradeep.

I would let you know based on my exp and approach :

APPLYMAP : IF i need to use the MAPPING of that columns across many areas in Dashboard rather than JOIN which helps at that instance only .

JOIN : This is mostly used when you have fields in common and you need to reduce the data set of 1 table based on the values of the fields in other table.

KEEP : If i have DIMENSION tables and have a key to associate to FACT Table, then using the KEEP helps to have only keys of the field in DIMENSION Table that exists in the FACT table ,  ( Also this gives better performance than JOIN and also if you need to use the DIM table in other areas in Model , by using KEEP we can have the table in Model whereas in JOIN when we join DIM to FACT , DIM would be dropped as result is only 1 table).

Hope this helps, please let me know if any help is needed.


Thanks

CY

vangurideepu
Creator
Creator
Author

Hi all,

Thanks for quick reply.

finally i understand the individual functionality,

but, is there any dependency based on relationship, will decide like keeps statement for one-to-many and for many-to-one joins statement and for many-to-many applymap.

vangurideepu
Creator
Creator
Author

Hi Marcus,

Thanks for reply, i have nearly 40+ tables in my database, i want build star schema.

i'm confusing between the joins, keeps and concatenation and applymap.

kindly provide the suggestions.

Thanks in advance.

marcus_sommer
MVP & Luminary
MVP & Luminary

Most important will be to load only those data which are really needed within the QlikView environment and then much more reduced within for certaines purposes specialized applications. Quite probably the number of tables will now decrease and even more significantely the number of fields and records.

Keep it simple and starts small until you understand the data and how Qlik worked especially the differences to the SQL logics. SQL means often that the data are normalized which is the opposite from the Qlik logic (although it would mostly work). This meant your various dimension-tables could probably just be joined together. But by the fact-tables it depends like above mentioned ...

- Marcus