refactored statement transformer
now support hash join