Ce face ISNULL()
ISNULL(x) este echivalentul funcției pentru x IS NULL. Nu o confunda cu ISNULL(x, y) din SQL Server, care înlocuiește NULL; în MySQL pentru asta există IFNULL().
Parametri
| Parametru | Descriere |
|---|---|
expresie |
Valoarea verificată. |
Ce returnează
1 sau 0.
Exemple
Exemplele de pe această pagină pornesc de la datele de mai jos. Rulează mai întâi acest cod, apoi exemplul.
CREATE TABLE produse (
id INT PRIMARY KEY,
nume VARCHAR(30),
pret DECIMAL(10,2),
stoc INT,
reducere INT
);
INSERT INTO produse VALUES
(1, 'Laptop', 3499.90, 4, NULL),
(2, 'Mouse', 79.50, 25, 10),
(3, 'Birou', 899.00, 0, 15),
(4, 'Scaun', 649.99, 7, NULL),
(5, 'Monitor', 1199.00, 3, 5);
Exemplul 1: Câte produse nu au reducere
SELECT SUM(ISNULL(reducere)) AS fara_reducere, COUNT(*) AS total FROM produse;
Rezultat
+---------------+-------+
| fara_reducere | total |
+---------------+-------+
| 2 | 5 |
+---------------+-------+
Greșeli frecvente
- Scrii
ISNULL(reducere, 0)ca în SQL Server. În MySQL primești eroare; foloseșteIFNULL(reducere, 0).
Comenzi înrudite
IS NULL: Găsește rândurile în care o coloană nu are valoare (NULL) sau, cu IS NOT NULL, în care are.COALESCE / IFNULL: Înlocuiește NULL cu o valoare implicită: returnează prima valoare care nu este NULL.