我有一个包含多个联接的查询,我想从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/