I'm now starting with both files having the exact same number of columns - I'll remove the column headers in the working files if it matters. I can move columns around at will before starting the join if it's preferable.
The "-1 1" makes it match on the first (and only) field in the first file, the 0-13 CSV; the "-2 3" makes it match on the third field in the second file, the codes CSV.
So, would it be "-2 1" for the first field in the second file? And does it matter that the first file has more than just the one field per row?
Here are the results...
$> join -a1 -t, -1 1 -2 1 -o auto all_rows.csv source_rows.csv
join: invalid file number in field spec: `auto'