Hash join: Difference between revisions
Content added Content deleted
(→{{header|AppleScript}}: Updated primitives) |
No edit summary |
||
Line 2,090: | Line 2,090: | ||
28 : Alan : Ghosts |
28 : Alan : Ghosts |
||
28 : Alan : Zombies</pre> |
28 : Alan : Zombies</pre> |
||
=={{header|PureBasic}}== |
|||
<lang PureBasic>Structure tabA |
|||
age.i |
|||
name.s |
|||
EndStructure |
|||
Structure tabB |
|||
char_name.s |
|||
nemesis.s |
|||
EndStructure |
|||
NewList listA.tabA() |
|||
NewList listB.tabB() |
|||
Macro SetListA(c_age, c_name) |
|||
AddElement(listA()) : listA()\age = c_age : listA()\name = c_name |
|||
EndMacro |
|||
Macro SetListB(c_char, c_nem) |
|||
AddElement(listB()) : listB()\char_name = c_char : listB()\nemesis = c_nem |
|||
EndMacro |
|||
SetListA(27, "Jonah") : SetListA(18, "Alan") : SetListA(28, "Glory") |
|||
SetListA(18, "Popeye") : SetListA(28, "Alan") |
|||
SetListB("Jonah", "Whales") : SetListB("Jonah", "Spiders") |
|||
SetListB("Alan", "Ghosts") : SetListB("Alan", "Zombies") |
|||
SetListB("Glory", "Buffy") |
|||
If OpenConsole("Hash_join") |
|||
ForEach listA() |
|||
PrintN("Input A = "+Str(listA()\age)+~"\t"+listA()\name) |
|||
Next |
|||
PrintN("") |
|||
ForEach listB() |
|||
PrintN("Input B = "+listB()\char_name+~"\t"+listB()\nemesis) |
|||
Next |
|||
PrintN(~"\nOutput\nA.Age\tA.Name\tB.Char.\tB.Nemesis") |
|||
ForEach listA() |
|||
ForEach listB() |
|||
If listA()\name = listB()\char_name |
|||
PrintN(Str(listA()\age)+~"\t"+listA()\name+~"\t"+ |
|||
listB()\char_name+~"\t"+listB()\nemesis) |
|||
EndIf |
|||
Next |
|||
Next |
|||
Input() |
|||
EndIf</lang> |
|||
{{out}} |
|||
<pre>Input A = 27 Jonah |
|||
Input A = 18 Alan |
|||
Input A = 28 Glory |
|||
Input A = 18 Popeye |
|||
Input A = 28 Alan |
|||
Input B = Jonah Whales |
|||
Input B = Jonah Spiders |
|||
Input B = Alan Ghosts |
|||
Input B = Alan Zombies |
|||
Input B = Glory Buffy |
|||
Output |
|||
A.Age A.Name B.Char. B.Nemesis |
|||
27 Jonah Jonah Whales |
|||
27 Jonah Jonah Spiders |
|||
18 Alan Alan Ghosts |
|||
18 Alan Alan Zombies |
|||
28 Glory Glory Buffy |
|||
28 Alan Alan Ghosts |
|||
28 Alan Alan Zombies</pre> |
|||
=={{header|Python}}== |
=={{header|Python}}== |