Run your query to get your list, store into an array since the values you need aren't going to come out in the order you need.
In a hurry so all this is sloppy psuedo-code
so a foreach loop to store array[1][name/addr/city/zip], array[2] to store name/addy/city/zip] for three rows from the query.
Then you can use
<tr><td>array[1]['name']</td></td>array[2]['name]</td><td>array[3]['name']</td></tr>
<tr><td>array[1]['addr']</td> ....
...
etc.
Then get the next 3 rows for shipping, you will probably have to do some width settings in pixels on the rows and data cells for it to print correctly.
Loop through above 10 times.