php - Zend框架加入

标签 php mysql zend-framework join

我已经为 Zend Framework 中的 follow join 问题苦苦挣扎了几个小时。

我的 table

  • 表格(网站)

    • ID
    • 用户 ID
    • 网站
    • 网址
    • ...
  • 表(用户)

    • ID
    • 用户名
    • 密码
    • ...
  • 表格(评论)

    • ID
    • website_id(网站 ID)
    • user_id(网站用户/所有者的 ID)
    • reviewer_id(评论过网站的用户的 ID)
    • 评论
    • ...

我想要得到什么..
创建一个包含评论和用户数据的数组是没有问题的,但我也想要 添加网站与评论进行比较。

我进行了以下连接,但我不会像我想要的那样工作,我的数据库中只有 3 个测试评论,而我的数组中得到了超过 12 个结果。

我的查询:

$select = $this->_db->select() ->来自('评论') ->joinLeft('用户', 'reviews.reviewer_id = users.id') ->joinLeft('网站', 'reviews.user_id = Reviews.user_id') ->where("reviews.user_id = $user_id");

$result = $this->getAdapter()->fetchAll($select);

谨致问候,

尼基

最佳答案

尝试将 groupBy 添加到您的查询中(未经测试)

$select = $this->_db->select()->from('reviews')
                              ->joinLeft('users', 'reviews.reviewer_id = users.id')
                              ->joinLeft('websites', 'reviews.user_id = reviews.user_id')
                              ->where("reviews.user_id = $user_id")
                              ->group('reviews.id');

关于php - Zend框架加入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6663751/

相关文章:

MySQL - 收集所有内容并排除

php - cakePHP 3.3 在 where() 中转换 typeMap

php - Zend_Db_Table - 关联数组而不是对象

php - Jquery从列表淡出后滑动到位置效果

php - 如何简化脚本

javascript - ajax 不在 for 循环内工作

php - 散列(): Unknown hashing algorithm: fnv1a64

mysqlslap测试并发随机插入和删除

zend-framework - 如何使用 Zend 框架从模型中获取请求对象。

php - 通过 Zend_Form 使用 Zend_Validate_Date 验证日期的输入字段