protected function _setQueryAliases($root = true, $preffered = null) { static $used = array(); if ($root) { if (!count($this->_joined)) { $this->_useAlias = false; return; } self::$_aliasesUsed = array(); self::$_aliasCounter = 1; } $this->_useAlias = true; if (strlen($preffered) && !in_array($preffered, self::$_aliasesUsed)) { self::$_aliasesUsed[] = $this->_alias = $preffered; } else { $this->_alias = 't' . self::$_aliasCounter++; } foreach ($this->_joined as $joined) { list($selector, $fk, $jk, $jt, $alias) = $joined; $selector->_setQueryAliases(false, $alias); } }