sql >> データベース >  >> RDS >> Mysql

MySQLでCOUNTを使用するときにnullではなく0を返す方法

    COALESCE()を使用します 働き。 COALESCE() 順番に計算された少なくとも2つの引数を取り、最初のnull以外の引数を返します。したがって、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. PASSサミット2013:シャーロットでの成功

    2. 致命的なエラー:メンバー関数query()PHPCLASSの呼び出し

    3. PHPからMySQLへのSSL接続

    4. このクエリはSQLインジェクションから安全ですか?