/** * Builds LEFT JOINS clauses for the query. * * @param Library\DatabaseQuerySelect A query object. * @return void */ protected function _buildQueryJoins(Library\DatabaseQuerySelect $query) { $state = $this->getState(); $query->join(array('session' => 'users_sessions'), 'tbl.email = session.email', $state->loggedin ? 'RIGHT' : 'LEFT'); $query->join(array('role' => 'users_roles'), 'role.users_role_id = tbl.users_role_id'); $query->join(array('group' => 'users_groups_users'), 'group.users_user_id = tbl.users_user_id'); }
protected function _buildQueryJoins(Library\DatabaseQuerySelect $query) { $state = $this->getState(); $query->join(array('section' => 'products_sections'), 'tbl.products_section_id = section.products_section_id')->join(array('group' => 'products_groups'), 'tbl.products_category_id = group.products_category_id'); // Only include joins when we want to list the categories that are attached to a product if ($state->active) { $subquery = $this->getObject('lib:database.query.select')->columns(array('products_group_id', 'products_count' => 'COUNT(DISTINCT products_product_id)'))->table('products_products')->where('published = :published')->bind(array('published' => '1'))->group('products_group_id'); $query->join(array('content' => $subquery), 'content.products_group_id = group.products_group_id'); } }
protected function _buildQueryJoins(Library\DatabaseQuerySelect $query) { if (!$this->getState()->isUnique()) { $query->join(array('relations' => 'attachments_relations'), 'relations.attachments_attachment_id = tbl.attachments_attachment_id', 'LEFT'); } return parent::_buildQueryJoins($query); }
protected function _buildQueryJoins(Library\DatabaseQuerySelect $query) { $state = $this->getState(); //Exclude joins if counting records if (!$query->isCountQuery()) { if ($state->table) { $query->columns(array('count')); $subquery = $this->getObject('lib:database.query.select')->columns(array('categories_category_id', 'count' => 'COUNT(categories_category_id)'))->table($state->table)->group('categories_category_id'); $query->join(array('content' => $subquery), 'content.categories_category_id = tbl.categories_category_id')->join(array('attachments' => 'attachments'), 'attachments.attachments_attachment_id = tbl.attachments_attachment_id')->join(array('thumbnails' => 'files_thumbnails'), 'thumbnails.filename = attachments.path'); } } parent::_buildQueryJoins($query); }
protected function _buildQueryJoins(Library\DatabaseQuerySelect $query) { $query->join(array('group' => 'users_groups'), 'group.users_group_id = tbl.users_group_id'); }
protected function _buildQueryJoins(Library\DatabaseQuerySelect $query) { $query->join(array('users' => 'users'), 'users.users_user_id = tbl.created_by'); }
protected function _buildQueryJoins(Library\DatabaseQuerySelect $query) { $query->join(array('module_menu' => 'pages_modules_pages'), 'module_menu.pages_module_id = tbl.pages_module_id')->join(array('extensions' => 'extensions'), 'extensions.extensions_extension_id = tbl.extensions_extension_id'); parent::_buildQueryJoins($query); }
/** * Builds LEFT JOINS clauses for the query. * * @param Library\DatabaseQuerySelect A query object. * @return void */ protected function _buildQueryJoins(Library\DatabaseQuerySelect $query) { $state = $this->getState(); $query->join(array('users' => 'users'), 'tbl.email = users.email'); }
protected function _buildQueryJoins(Library\DatabaseQuerySelect $query) { $query->join('RIGHT', 'users u', 'tbl.created_by = u.id'); }
protected function _buildQueryJoins(Library\DatabaseQuerySelect $query) { $query->join(array('brand' => 'products_brands'), 'tbl.products_brand_id = brand.products_brand_id')->join(array('condition' => 'products_conditions'), 'tbl.products_condition_id = condition.products_condition_id')->join(array('group' => 'products_groups'), 'tbl.products_group_id = group.products_group_id')->join(array('category' => 'products_categories'), 'group.products_category_id = category.products_category_id')->join(array('section' => 'products_sections'), 'category.products_section_id = section.products_section_id'); }