Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment obtenir la valeur par défaut si la valeur de la colonne est NULL ?

Si vous écrivez ceci :

SELECT
    COALESCE(OVER_BID_PRICE, -1)
FROM
    AUCTION_CAR_BID
WHERE
    BID_SEQ = 2354435345;

Les résultats peuvent être de deux types.

Premier résultat :votre requête ne renvoie aucune ligne ! Votre condition WHERE n'est pas satisfaite, vous lirez donc NULL

Deuxième résultat :Votre requête renvoie des lignes mais la valeur de votre champ est NULL, votre COALESCE fonctionne bien dans ce cas

Pour résoudre ce problème, vous pouvez essayer ceci :

SELECT COALESCE(
   (SELECT
   COALESCE(OVER_BID_PRICE, -1)
   FROM AUCTION_CAR_BID
   WHERE BID_SEQ = 2354435345)
,-1);

Dites-moi si c'est OK