sql >> Databasteknik >  >> RDS >> Mysql

GROUP_CONCAT och INNER JOIN med WHERE-satsen

WHERE klausul begränsar poster tidigare till gruppering; medan HAVING klausul begränsar resultat efter gruppering:

SELECT   course.id, course.name, GROUP_CONCAT(Flag.id) flags
FROM     course
    JOIN course_flags ON course_flags.course_id = course.id
    JOIN flag ON flag.id = course_flags.flag_id
GROUP BY Course.id
HAVING   SUM(flag.name = 'promocja')

Se den på sqlfiddle .



  1. COLLATION() Funktion i Oracle

  2. Skapa en fråga för att få antalet ej slutförda samtal, gruppera i 2 fält

  3. Ändrad fråga med ManyToMany

  4. MySQL:Du kan inte ange måltabell för uppdatering i FROM-satsen