ホームページ >データベース >mysql チュートリアル >MySQL クエリで NULL フィールドをゼロに置き換える方法は?

MySQL クエリで NULL フィールドをゼロに置き換える方法は?

Barbara Streisand
Barbara Streisandオリジナル
2025-01-05 13:09:40387ブラウズ

How to Replace NULL Fields with Zeros in a MySQL Query?

MySQL で Null フィールドをゼロに設定する

この MySQL クエリは、uc_orders (uo) テーブルを含むさまざまなテーブルからデータを取得することを目的としています。ただし、結果には null フィールドが含まれており、代わりにゼロとして返されることが望まれます。

これを実現するには、サブクエリ内で IFNULL 関数を使用できます。

SELECT uo.order_id,
       IFNULL(uo.order_total, 0) AS order_total,
       uo.order_status,
       IFNULL((SELECT SUM(uop.price * uop.qty)
                 FROM uc_order_products uop
                 WHERE uo.order_id = uop.order_id), 0) AS products_subtotal,
       IFNULL((SELECT SUM(upr.amount)
                 FROM uc_payment_receipts upr
                 WHERE uo.order_id = upr.order_id), 0) AS payment_received,
       IFNULL((SELECT SUM(uoli.amount)
                 FROM uc_order_line_items uoli
                 WHERE uo.order_id = uoli.order_id), 0) AS line_item_subtotal
FROM uc_orders uo
WHERE uo.order_status NOT IN ("future", "canceled")
AND uo.uid = 4172;

IFNULL 関数基本的に、評価される式が null かどうかをチェックします。そうである場合、指定されたフォールバック値 (この場合は 0) が代わりに返されます。これにより、クエリが null フィールドに対して常に 0 を返すようになります。

以上がMySQL クエリで NULL フィールドをゼロに置き換える方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。