【问题标题】:Using join with multiple table in zend social engine在zend社交引擎中使用多表连接
【发布时间】:2018-12-26 07:36:49
【问题描述】:

我想加入多个超过 3 个的表并删除重复的行。

【问题讨论】:

    标签: php zend-framework socialengine


    【解决方案1】:

    查询示例

    $table = Engine_Api::_ ()->getDbtable ( 'topics', 'group' );
    $topicselect = $table->select ()->where ( 'group_id = ?', $group_id );
    
    $topics = $table->fetchAll ( $topicselect );
    $topicCount = count ( $topics );
    
    $photoTable = Engine_Api::_ ()->getItemTable ( 'group_photo' );
    $photoselect = $photoTable->select ()->where ( 'group_id = ?', $group_id );
    
    $photos = $photoTable->fetchAll ( $photoselect );
    $photoCount = count ( $photos );
    
    $groupTable = Engine_Api::_ ()->getItemTable ( 'group' );
    $groupInfo = $groupTable->info ( 'name' );
    $storage = Engine_Api::_ ()->getDbtable ( 'files', 'storage' );
    $storage_files = $storage->info ( 'name' );
    $groupMembershipTable = Engine_Api::_ ()->getDbtable ( 'membership', 'group' );
    $groupMembershipTableName = $groupMembershipTable->info ( 'name' );
    $category_table = Engine_Api::_ ()->getDbtable ( 'categories', 'group' );
    $categoryInfo = $category_table->info ( 'name' );
    
    $select = $groupTable->select ()->setIntegrityCheck ( false )->from ( array (
            'group' => $groupInfo 
    ) )->joinLeft ( array (
            'category' => $categoryInfo 
    ), 'category.category_id =group.category_id', array (
            'category.title AS categoryname' 
    ) )->joinLeft ( array (
            'membership' => $groupMembershipTableName 
    ), "membership.resource_id = group.group_id and membership.user_id= $user_id", array ( 
    ) )->joinLeft ( array (
            'storage' => $storage_files 
    ), "storage.file_id=group.photo_id", array (
            'storage.storage_path' 
    ) )->where ( 'group.group_id = ?', $group_id )->order ( "storage.modified_date DESC" );
    // ->group('group.group_id');
    
    $group = $groupTable->fetchAll ( $select );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-07
      • 1970-01-01
      • 2012-02-28
      • 2016-06-26
      • 1970-01-01
      • 2011-12-27
      • 1970-01-01
      • 2012-11-04
      相关资源
      最近更新 更多