mysql - 返回 JOIN 查询中列的 SUM

标签 mysql sql

我有一个包含多个联接的查询,我想从JOIN 评论 结果中返回一列的总和...有什么想法吗?

SELECT *,user.id AS u_id
FROM user_connects
    JOIN user ON user_connects.user_y = user.id
    JOIN reviews ON user_connects.user_y = reviews.user
 WHERE user_connects.user_x = 1
 LIMIT 25

我想返回这样的东西,[1] 索引 totalcolumls 是评论表的 SUM 结果:

array(1) {
  [0]=>
  object(stdClass)#26 (12) {
    ["id"]=>
    string(1) "2"
    ["user_x"]=>
    string(1) "1"
    ["user_y"]=>
    string(1) "2"
    ["date_created"]=>
    string(10) "1457593440"
    ["first_name"]=>
    string(6) "Donald"
    ["last_name"]=>
    string(5) "Trump"
    ["age"]=>
    string(2) "68"
    ["gender"]=>
    string(4) "Male"
    ["img_url"]=>
    string(10) "donald.jpg"
    ["keto_score"]=>
    string(1) "5"
    ["date_created_dt"]=>
    string(19) "2016-03-09 07:00:00"
    ["u_id"]=>
    string(1) "2"
  },
  [1]=>
  object(stdClass)#26 (12) {
    ["totalcolumls"]=>
    string(1) "2"
   }
}

最佳答案

你可以这样试试

SELECT count(reviews.*) AS total_review_column, user_connects.*, reviews.*, user.*, user.id AS u_id
FROM user_connects
    JOIN user ON user_connects.user_y = user.id
    JOIN reviews ON user_connects.user_y = reviews.user
 WHERE user_connects.user_x = 1
 group by reviews.user

关于mysql - 返回 JOIN 查询中列的 SUM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36424223/

相关文章:

mysql - 如何将以下存储过程转换为准备好的语句?

php - 数组在 "IN"语句中被屏蔽为字符串

mysql转储。文件的位置?

php - 在一个长词中查找多个词并按相关性对结果进行排序

SQL Server 2005 - 如何收缩临时数据库

mysql - 在 mysql 中搜索具有 `|` 字符作为其值的列

php - echo out mysql_real_escaped quotes 在引号或双引号后截断字符串

mysql - SQL 查询? SELECT 这个查询的逆?

mysql - 如何将SQL中的2个表与1个公共(public)列合并,而在其他列中不合并?

java - Hibernate @NamedNativeQuery 读取 "normal"实体写入的陈旧数据持久化