table digest, table digest ignore caseThese functions work very similarly like table integrate(). Instead of stopping at the first match in the lookup table, this function family looks up all entries in the lookup table and includes these rows looked up in the data integration proedure. The search procedure through the lookup table will always be top-down. If only one match has been identified, then the behavior is the same as in table integrate(). In case 2 or more matching enties are found in the lookup table, then the following happens:
Additional features:
Indirect parameter passing is disabled
6 - 9 (For parameter description and return values: see table integrate() )
table load( lookup, "Examples/Table Lookup Example 1.csv" );
table initialize( target, { { Name, Favorite Country },
{ Antonio, Italy}, { Fritz, Germany }, { Andreas, Germany }, { Pascale, France}, { Mike, USA } } );
echo("Target table before looking up with 'table digest':");
table list ( target );
echo("Lookup table:");
table list ( lookup );
count[] = table digest ( target, Favorite Country, {Meal, Rating Sum},
lookup, Country, { Recommendation, Rating }, { append with space, add }, true, {Counter,Counter} );
echo("Target table after looking up with 'table digest':");
table list ( target );
echo("Lookup table after looking up to check the 'Counter' column:");
table list ( lookup );
echo("Number of accesses: ", count[] );
Target table before looking up with 'table digest':
0 : Name | Favorite Country
1 : Antonio | Italy
2 : Fritz | Germany
3 : Andreas | Germany
4 : Pascale | France
5 : Mike | USA
Lookup table:
0 : City | Country | Meal or Drink | Recommendation | Rating
1 : Hamburg | Germany | Meal | Hering | 2
2 : Hamburg | Germany | Meal | Seafood | 3
3 : New York | USA | Meal | Pizza | 5
4 : New York | USA | Meal | Hamburger | 5
5 : Florence | Italy | Drink | Chianti | 4
6 : Florence | Italy | Meal | Tagliatelli | 5
7 : Edinburgh | G. Britain | Drink | Single Malt | 3
8 : Edinburgh | G. Britain | Meal | Fish & Chips | 3
9 : New York | USA | Drink | Lager | 3
10 : Camarque | France | Meal | Cheese | 3
11 : Camarque | France | Spice | Fleur du sel | 4
12 : Boston | USA | Meal | Lobster | 4
13 : Plzen | Czech Rep. | Drink | Pils | 4
14 : Munich | Germany | Meal | Pork | 3
15 : Munich | Germany | Drink | Weissbier | 5
Target table after looking up with 'table digest':
0 : Name | Favorite Country | Meal | Rating Sum | Counter
1 : Antonio | Italy | Chianti Tagliatelli | 9 | 2
2 : Fritz | Germany | Hering Seafood Pork Weissbier | 13 | 4
3 : Andreas | Germany | Hering Seafood Pork Weissbier | 13 | 4
4 : Pascale | France | Cheese Fleur du sel | 7 | 2
5 : Mike | USA | Pizza Hamburger Lager Lobster | 17 | 4
Lookup table after looking up to check the 'Counter' column:
0 : City | Country | Meal or Drink | Recommendation | Rating | Counter
1 : Hamburg | Germany | Meal | Hering | 2 | 2
2 : Hamburg | Germany | Meal | Seafood | 3 | 2
3 : New York | USA | Meal | Pizza | 5 | 1
4 : New York | USA | Meal | Hamburger | 5 | 1
5 : Florence | Italy | Drink | Chianti | 4 | 1
6 : Florence | Italy | Meal | Tagliatelli | 5 | 1
7 : Edinburgh | G. Britain | Drink | Single Malt | 3 |
8 : Edinburgh | G. Britain | Meal | Fish & Chips | 3 |
9 : New York | USA | Drink | Lager | 3 | 1
10 : Camarque | France | Meal | Cheese | 3 | 1
11 : Camarque | France | Spice | Fleur du sel | 4 | 1
12 : Boston | USA | Meal | Lobster | 4 | 1
13 : Plzen | Czech Rep. | Drink | Pils | 4 |
14 : Munich | Germany | Meal | Pork | 3 | 2
15 : Munich | Germany | Drink | Weissbier | 5 | 2
Number of accesses: 32
table digest smart
table digest with rules
table digest with rules once
table lookup
table integrate
table expand