ciao!

ho questa stored procedure con una query dinamica.
il problema è che se mettono dei parametri che non restituiscono records, i valori mi ritornano null.
sarebbe possibile dargli un valore di default, tipo 0?

codice:
DELIMITER //
DROP PROCEDURE IF EXISTS analisi_orfo //
CREATE PROCEDURE analisi_orfo(
    IN data_from VARCHAR(10),
    IN data_to VARCHAR(10),
    IN fornitore INT,
    IN articolo INT,
    IN stagione VARCHAR(15)
)
    NO SQL
BEGIN
    SET @query = CONCAT("SELECT SUM(or_qta) qta, SUM((or_prezzo_acquisto - (or_prezzo_acquisto * or_sconto / 100)) * or_qta) netto
                        FROM orfo_righe
                        INNER JOIN articoli_gest ON artgest_id = or_tipo_articolo
                        INNER JOIN orfo ON orfo_numero = or_bolla
                        WHERE orfo_fornitore = ", fornitore, " "
        );

    IF articolo != 0 THEN
        SET @query = CONCAT(@query, "AND or_tipo_articolo = ", articolo, " ");
    END IF;

    IF stagione != 'ND' THEN
        SET @query = CONCAT(@query, "AND artgest_desqual2 = '", stagione, "' ");
    END IF;

    SET @query = CONCAT(@query, "AND DATE(orfo_data) BETWEEN DATE('", data_from, "') AND DATE('", data_to, "')");

    PREPARE comando FROM @query;
    EXECUTE comando;
    DEALLOCATE PREPARE comando;
END