diff --git a/term_reference_tree.module b/term_reference_tree.module
index 91313ef..5421a1c 100644
--- a/term_reference_tree.module
+++ b/term_reference_tree.module
@@ -138,12 +138,14 @@ function _term_reference_tree_get_children($tid, $vid) {
   // module is enabled).
   $select = db_select('taxonomy_term_data', 'd');
   $select->join('taxonomy_term_hierarchy', 'h', 'd.tid = h.tid');
+  $select->join('taxonomy_vocabulary', 'v', 'v.vid = d.vid');
+  $select->addField('v', 'machine_name', 'vocabulary_machine_name');
   $result = $select->fields('d', array('tid', 'name'))
     ->condition('d.vid', $vid, '=')
     ->condition('h.parent', $tid, '=')
-    ->orderBy('weight')
-    ->orderBy('name')
-    ->orderBy('tid')
+    ->orderBy('d.weight')
+    ->orderBy('d.name')
+    ->orderBy('d.tid')
     ->execute();
 
   $terms = array();
