sql >> Database >  >> RDS >> Mysql

Hoe LIKE te gebruiken voor mysql-zoekopdrachten met JOIN en ORDER BY het aantal rijen/stemmen in de stemtabel?

Hier is een vollediger antwoord. Om de som van goede stemmen en slechte stemmen uit een reeks samengevoegde tabelrijen te krijgen, moet u de gelijkaardige rijen samen groeperen.

Hieronder moet u het gewenste resultaat geven.

mysql_query("
    SELECT m.Title, r.Subject, v.TipID, sum(v.IsGood) as IsGood, sum(v.isBad) as isBad FROM Movies m
        LEFT JOIN Reviews r
            ON m.ID=r.MovieID
        LEFT JOIN Votes v
            ON r.ID=v.ReviewID
        WHERE (m.Title LIKE '%" . $search . "%'
            OR r.Subject LIKE '%" . $search . "%')
        GROUP BY  m.Title, r.Subject, v.TipID
        ORDER BY sum(v.IsGood) desc, sum(v.isBad) asc LIMIT 10")or die(mysql_error());



  1. In welke volgorde verandert de Oracle SQL update-instructie de kolomwaarden?

  2. error Illegale mix van sorteringen voor concat

  3. CSV versus MySQL-prestaties

  4. Hoe op te lossen:mysql:[ERROR] Optie gevonden zonder voorafgaande groep in configuratiebestand /etc/mysql/my.cnf?