sto cercando di riassumere saldi cliente utilizzando la seguente query:La mia query SUM Select restituisce null. Esso dovrebbe restituire 0
select sum(balance) from mytable where customer = 'john'
Tuttavia, se il cliente non ha equilibrio (cioè senza righe corrispondenti nella tabella mytable
), la mia domanda restituisce null e non 0. Qual è il problema?
COALESCE è molto meglio qui quindi isnull –
@ScottSelby: come mai? AFAIK, 'isnull' è più prevedibile in quanto restituisce sempre il tipo di dati del primo argomento. – Andomar
@Andomar "Un'espressione che coinvolge ISNULL con parametri non nulli è considerata NOT NULL, mentre le espressioni che coinvolgono COALESCE con parametri non nulli sono considerate NULL" - Io uso sempre COALESCE, prenderà sempre per null anche se il saldo non è annullabile –