sql >> Databáze >  >> RDS >> Mysql

Jak dosáhnout výchozí hodnoty, pokud je hodnota sloupce NULL?

Pokud napíšete toto:

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

Výsledky mohou být dvou typů.

První výsledek:Váš dotaz nevrací řádky! Vaše podmínka WHERE je neuspokojivá, takže si přečtete NULL

Druhý výsledek:Váš dotaz vrací řádky, ale hodnota vašeho pole je NULL, vaše COALESCE v tomto případě funguje dobře

Chcete-li to vyřešit, můžete zkusit toto:

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

Řekněte mi, jestli je to v pořádku



  1. Jak mohu automaticky vytvořit e-mailovou adresu pro členy mých webových stránek?

  2. Vždy šifrovaný výkon:Následná akce

  3. Použití Boto3 k interakci s amazon Aurora na RDS

  4. mysqli_stmt::bind_param() - zadejte jiný datový typ než s pro každý parametr