support join on multiple columns and some format fix