ホームページ >データベース >mysql チュートリアル >すべての行を保持しながら GROUP BY クエリから NULL 値を除外する方法
NULL 値を除外する GROUP BY クエリ
GROUP BY 関数を使用してデータを集計する場合、NULL 値を除外する必要があるシナリオが発生する可能性があります。グループ化操作からの NULL 値。これは通常、指定したフィールド内の NULL 値を持つすべての行を保持したい場合に発生します。
これを実現するには、NULL 値を一意の識別子に置き換える方法が 1 つあります。これは、IFNULL() 関数を使用して実行できます。
SELECT `table1`.*, IFNULL(ancestor,UUID()) AS `unq_ancestor`, GROUP_CONCAT(id SEPARATOR ',') AS `children_ids` FROM `table1` WHERE (enabled = 1) GROUP BY unq_ancestor
この例では、NULL 祖先を一意の UUID() 値に置き換えます。これにより、NULL の祖先がグループ化されなくなり、祖先フィールドの値に関係なく、クエリはすべての行を返します。
以上がすべての行を保持しながら GROUP BY クエリから NULL 値を除外する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。