Använd COALESCE()
fungera. COALESCE()
tar minst 2 argument, beräknade i ordning, och returnerar det första icke-null-argumentet. Alltså COALESCE(null, 0)
skulle returnera 0
, och COALESCE(null, null, null, null, 1)
skulle returnera 1
. Här är MySQL:s dokumentation
om COALESCE()
.
När du läser om din fråga bör du kunna få de resultat du vill ha så här:
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
Som sagt, det här borde fungera, men något med det känns inte helt rätt.