Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да върнете 0 вместо null, когато използвате COUNT в MySQL

Използвайте COALESCE() функция. COALESCE() приема поне 2 аргумента, изчислени в ред, и връща първия ненулев аргумент. Така че COALESCE(null, 0) ще върне 0 и COALESCE(null, null, null, null, 1) ще върне 1 . Ето документацията на MySQL относно COALESCE() .

При повторно четене на заявката си, вие трябва можете да получите желаните от вас резултати по следния начин:

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

Както казах, това би трябвало да работи, но нещо в него не изглежда съвсем правилно.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Има ли причина все още да използвате змийски случай за таблици и колони на базата данни?

  2. Проектиране на събития за дата и час, които не се припокриват

  3. Низът е съкратен по дължина, но не се допуска разрязване на думи

  4. Как да групирате непрекъснати диапазони с MySQL

  5. read_sql на pandas със списък със стойности за условие WHERE