From my experience, whole trade is logged as two consecutive rows (ids) in picklog, so if you found one part, you only need to check previous/next row in table.
Also, every item put into the trade is logged separately. Zeny trades are logged to zenylog table.
Basically there is an algorithm on what to query to get the whole image of trades. It should be quite easy to translate it into PHP for example. However, querying picklog is a performance killer. If you intend to do it on regular basis, I strongly recommend putting picklog on a seperate physical drive (I/O lag) and adding some indexes to the table (full table scans).