Per spiegare a un capo la differenza tra "zero" e "nulla":
"Zero" è un valore. È la quantità unica e conosciuta di zero, che è significativa nell'aritmetica e nell'altra matematica.
"Null" è un non valore. È un "segnaposto" per un valore di dati che non è noto o non specificato. È significativo solo in questo contesto; le operazioni matematiche non possono essere eseguite su null (il risultato di qualsiasi operazione di questo tipo non è definito, e quindi anche generalmente rappresentato come null).
Ad esempio, come nei commenti: "Qual è il tuo reddito annuale?" è una domanda che richiede una risposta numerica. "0" è una risposta perfettamente valida per qualcuno che non lavora e non ha redditi da investimenti. Se l'utente non inserisce alcun valore, non necessariamente guadagna denaro; semplicemente non volevano dire al tuo software quanto (o poco) fanno. È uno sconosciuto, non specificato; pertanto, per consentire al software di continuare, si specifica il segnaposto "null" per quel campo di dati all'interno del software. Ciò è tecnicamente valido dal punto di vista dei dati; se è valido a livello aziendale dipende dalla necessità o meno di un valore numerico effettivo (pari a zero) per eseguire un'operazione matematica (come il calcolo delle imposte o il confronto con le soglie che determinano i benefici).
Nei computer, praticamente qualsiasi operazione su una variabile contenente null risulterà in null o in una condizione di errore, poiché poiché uno dei valori della variabile non è noto, il risultato dell'espressione non può essere conosciuto. L'equivalente di eseguire matematica su null sarebbe se ti chiedessi "Qual è il cinque più il numero a cui sto pensando in questo momento?". È impossibile per te dare una risposta definitiva perché non conosci il numero a cui sto pensando. Un'operazione su zero, ad eccezione della sua divisione, è generalmente valida e restituirà un altro valore noto e univoco.