2016-04-05 9 views
1

Ich habe eine Abfrage mit einer Anzahl von Joins, möchte ich die Summe einer Spalte aus dem kommentieren Bewertungen Ergebnisse ... irgendwelche Ideen?Geben Sie die Summe der Spalte in JOIN Abfrage

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 

Was ich so etwas wie dies zurückkehren möchten, mit [1] Index totalcolumls die SUM Ergebnis der Tabelle Bewertungen sind:

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" 
    } 
} 
+1

Limit, aber keine Bestellung von ... Bist du dir da sicher? – jarlh

+0

Ich denke, Beispieldaten und gewünschte Ergebnisse würden erklären, was Sie tun möchten. –

+0

Überprüfen Sie 'GROUP BY', kombiniert mit' SUM() '. – jarlh

Antwort

0

Sie können wie versuchen, diese

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 
Verwandte Themen