MySQL добавить запрос с нулевым значением

0

У меня есть запрос mysql

SELECT
    ju.ID,
    ju.JENIS_USAHA,
    COALESCE(TOTAL_PEMBERI, 0) AS TOTAL_PEMBERI,
    COALESCE(OUTLET_PEMBERI, 0) AS OUTLET_PEMBERI,
    COALESCE(TOTAL_PENERIMA, 0) AS TOTAL_PENERIMA,
    COALESCE(OUTLET_PENERIMA, 0) AS OUTLET_PENERIMA,
    COALESCE(OUTLET_PEMBERI + OUTLET_PENERIMA, 0) AS SEMUA

проблема в том, что OUTLET_PEMBERI не имеет значения null и OUTLET_PENERIMA null (или наоборот), SEMUA покажет 0. Как это решить? Спасибо

Теги:

1 ответ

1
Лучший ответ

Попробуйте использовать COALESCE на обоих терминах отдельно:

SELECT
    ju.ID,
    ju.JENIS_USAHA,
    COALESCE(TOTAL_PEMBERI, 0) AS TOTAL_PEMBERI,
    COALESCE(OUTLET_PEMBERI, 0) AS OUTLET_PEMBERI,
    COALESCE(TOTAL_PENERIMA, 0) AS TOTAL_PENERIMA,
    COALESCE(OUTLET_PENERIMA, 0) AS OUTLET_PENERIMA,
    COALESCE(OUTLET_PEMBERI, 0) + COALESCE(OUTLET_PENERIMA, 0) AS SEMUA
FROM ...

Если это не решит вашу проблему, и вы действительно хотите получить нулевое значение, если любой из сумм в суммировании будет NULL, тогда просто оставьте свой код как есть.

  • 0
    оно работает. Спасибо

Ещё вопросы

Сообщество Overcoder
Наверх
Меню