Great explanation, Screwtapello!
In the general case, if you want a specific row of a table at a known index as a dictionary, I'd recommend skipping the query and instead using simple indexing. The following lines are both equivalent to your third example (assuming you just want every column with its original name and order):
piece_data: (rows me.value)[row] piece_data: me.value[row]