返回 JOIN 查询中列的 SUM
Posted
技术标签:
【中文标题】返回 JOIN 查询中列的 SUM【英文标题】:Return the SUM of column in JOIN query 【发布时间】:2016-04-05 10:46:30 【问题描述】:我有一个包含多个联接的查询,我想从 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"
【问题讨论】:
限制,但没有订单... 你确定吗? 我认为样本数据和期望的结果将有助于解释您想要做什么。 查看GROUP BY
,结合SUM()
。
任何与上述相关的 GROUP BY 示例
漂亮的虚拟数据:)
【参考方案1】:
你可以这样试试
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
【讨论】:
以上是关于返回 JOIN 查询中列的 SUM的主要内容,如果未能解决你的问题,请参考以下文章