Re: How to do a SQL type operation???

• To: mathgroup at smc.vnet.net
• Subject: [mg64392] Re: How to do a SQL type operation???
• From: "Ray Koopman" <koopman at sfu.ca>
• Date: Wed, 15 Feb 2006 03:32:06 -0500 (EST)
• References: <dspfnb\$cf2\$1@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

```Richard Palmer wrote:
> Assume Table1={{a,Xa},{b,Xb},...,{n,Xn},...} where the key a can occur many
> times and Xa is different each occurrence.
>
> We also have table2={{a,Ya},{b,Yb},...,{n,Yn}}. Here a,b,...,n occur exactly
> once.
>
> How do I create table3={{a,Xa,Ya},{b,Xb,Yb},...,{n,Xn,Yn},...} by joining
> the tables on the first column?
>
> From the problem, if a (or b or c or ...  n} is in table1, it is also in
> table1 and visa versa.
>
> The a,b,...,n,... Are small positive integers.
>
> Thanks

Ah, the virtues of testing! In this case it showed
the need to parenthesize the function in Scan.

In[1]:= table1 = {{a,Xa},{b,Xb},{c,Xc},{d,Xd},{a,Xaa},{c,Xcc}}
table2 = {{a,Ya},{b,Yb},{c,Yc},{d,Yd}}
Module[{Y},Scan[(Y@#[[1]] = #[[2]])&, table2];
Append[#, Y@#[[1]] ]& /@ table1]

Out[1]= {{a,Xa},{b,Xb},{c,Xc},{d,Xd},{a,Xaa},{c,Xcc}}
Out[2]= {{a,Ya},{b,Yb},{c,Yc},{d,Yd}}
Out[3]= {{a,Xa,Ya},{b,Xb,Yb},{c,Xc,Yc},{d,Xd,Yd},
{a,Xaa,Ya},{c,Xcc,Yc}}

```

• Prev by Date: Re: Re: Comparison of Mathematica on Various Computers
• Next by Date: Re: Solve or Reduce?
• Previous by thread: Re: How to do a SQL type operation???
• Next by thread: Re: Re: How to do a SQL type operation???