sql >> Database >  >> RDS >> Mysql

Hoe 0 te retourneren in plaats van null bij gebruik van COUNT in MySQL

Gebruik de COALESCE() functie. COALESCE() neemt ten minste 2 argumenten, in volgorde berekend, en retourneert het eerste niet-null-argument. Dus COALESCE(null, 0) zou 0 teruggeven , en COALESCE(null, null, null, null, 1) zou 1 teruggeven . Hier is MySQL-documentatie over COALESCE() .

Bij het herlezen van uw vraag, moet u moeten in staat zijn om de gewenste resultaten als volgt te krijgen:

SELECT <all the fields you want>, b.songsID, COUNT(*) AS projects_count
FROM $sTable b
LEFT OUTER JOIN $sTable2 bb ON bb.songs_id = b.songsID
$sWhere
GROUP BY b.songsID
$sOrder
$sLimit

Zoals ik al zei, dit zou moeten werken, maar er voelt iets niet helemaal goed.



  1. Snaren op de juiste manier splitsen - of de op één na beste manier

  2. Stap voor stap upgradeproces voor R12.2 Upgrade Part -1

  3. Eenvoudige manier om één record uit MySQL te lezen

  4. Op tijd gebaseerde prioriteit in Active Record Query