sql >> Databasteknik >  >> RDS >> Mysql

Varför join-fråga som innehåller en summafunktion returnerar bara 1 rad

Du behöver en GROUP BY annars kommer den att aggregera hela tabellen istället för att returnera en rad för varje problem_id:

SELECT
    problems.problem_id,
    creator_member_id,
    problem_title,
    problem_description,
    sum(vote) as totalVotes,
    problem_date
FROM problems
LEFT JOIN problem_votes
    ON problems.problem_id = problem_votes.problem_id
GROUP BY problems.problem_id

Den här frågan använder ett MySQL-tillägg:GRUPPER EFTER och HAV med dolda kolumner



  1. Kopiera två kolumner från en tabell till en annan, men bara unika värden

  2. Välj en post bara om den före den har ett lägre värde

  3. betalningsfördelning oracle sql-fråga

  4. Hur skapar man användare för en db i postgresql?