Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Synthetic key and how to avoid it in QlikView

Hi Experts,

What is Synthetic Key and How to avoid it in qlikview?

Thanks in Advance,

Leela Madhav

9 Replies
Anonymous
Not applicable
Author

hic
Former Employee
Former Employee

  1. Make sure that key fields are named the same in the tables you want to link.
  2. Make sure that no other fields are named the same
  3. Make sure that you don't have unnecessary keys. (Example: If you link on Date, you should not have Month as key also)

HIC

Anonymous
Not applicable
Author

Hi

See this, perhaps, help you!


What is Synthetic Keys.pdf

Regards..

Anonymous
Not applicable
Author

When two or more input tables have two or more fields in common, this implies a composite key relationship

In this example SalesOrderNumber and SalesOrderLineNumber are Synthetics Keys:

SynctheticKey.PNG

Posible solutions:

  • rename fields
  • remove conflicting fields from one of the two tables
  • create an explicit complex key with the concatenation of all common fields that actually represent the link between the two tables
Anonymous
Not applicable
Author

Thanks for information

Regards

Leela Madhav

Anonymous
Not applicable
Author

Thanks for information

Regards

Leela Madhav

engishfaque
Specialist III
Specialist III

Dear Leela,

Synthetic key can be removed by various ways most of them are given below,

1. By renaming the field names using these specifier: Qualify/UnQualify, Rename Field, Alias, AS

2. Concatenate Table

3. Create Link Table

Kind regards,

Ishfaque Ahmed

Not applicable
Author

if you have more than one common field between two tables then it create synthetic key.

we can avoid it by using qualify, join ,concatenation and link table.

Anonymous
Not applicable
Author

it means two or more fields have in more than one table it is synthetic key and

it is avoid the rename the field name, remove the fields names , by using the qualify and unqualify and autohash128or autohash256