Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Joins Vs Applymap

hi,

I have small confusion between Applymap() and joins?

I think in applymap() a small drawback is there

what applymap() do, we can do by the joins and drop the table.

my idea is We can use the join to bring one filed to another table and drop the table.

in applymap() every time it looks into the table and it takes more time than a join so join is good?

is it correct?

i wan difference between applymap and join;

thanks in advance

venu

1 Solution

Accepted Solutions
its_anandrjs

Join is better than Mapping but depends on the model some where mapping is better.

Hope this helps

Thanks & Regards

View solution in original post

9 Replies
Not applicable
Author

vikasmahajan

It is always good practice using joins all data is reside in on single data source in developer's point of view where us when if there is specific requirement occurs in this scenario you should use apply map also

go through this discussion

Mapping Load / Apply Map versus Left Join

hope this help you.

Vikas   

Hope this resolve your issue.
If the issue is solved please mark the answer with Accept as Solution & like it.
If you want to go quickly, go alone. If you want to go far, go together.
Not applicable
Author

Use ApplyMap instead of Join

ApplyMap performance better than Join

Apply map

hope this help you.

- ravi

its_anandrjs

Join is better than Mapping

Hope this helps

Thanks & Regards

sudeepkm
Specialist III
Specialist III

Applymap is for the Reference lookup type of requirement.

The Mapping load only takes two fields in the table.

However Join can be used if you want to select a result set of the source tables.

Joins can work on more than one Field and their values with four types(outer, inner,left and right).

its_anandrjs

Join is better than Mapping but depends on the model some where mapping is better.

Hope this helps

Thanks & Regards

Peter_Cammaert
Partner - Champion III
Partner - Champion III

It all comes down to how much data you want to combine. A JOIN is very flexible / powerful but also a resource hog. Mapping tables are extremely fast but you won't experience any improvement on small data sets.

Most long-time QlikView developers tend to prefer applymap to any JOIN simply because of its efficiency. When a document has to be reloaded in a densely populated QDS environment, every second and every MB saved is crucial for achieving optimal performance.

To summarize:

  • Avoid JOINs, especially on large data sets. You can knock out your server with an audacious JOIN, often leading to the dreaded "General Script Error".
  • Use Applymap() for conversions and translations of single fields, or multiple Mapping tables for multiple fields in large data sets (currencies?)
  • Use Lookup() is you want to get values from different columns in an existing table. It's not as fast as applymap() but way faster in many cases than a Join.
  • You can even use ApplyMap() instead of Exists() in a WHERE clause, and performance will often improve. But that depends on the situation.

There is no absolute thruth that tells you when to use this, and when to use that technique. You should always try what you think is best. That's a good way to develop your "Fingerspitzengefühl" (aka QlikView Experience)

Good luck,

Peter

Not applicable
Author

hi Ravi Shankar Paramaramaraj can you say in your word hw applymap is better please/... thanks in Advance

venu

Not applicable
Author

Hi Venu,

first of all its upto requirment. whenever possible its better to go for Applymap

bcoz, when u compare the performance of Applymap and join (big data). Applymap perform better