sql >> データベース >  >> RDS >> Mysql

列の値がNULLの場合にデフォルト値を達成するにはどうすればよいですか?

    これを書く場合:

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

    結果は2つのタイプになります。

    最初の結果:クエリは行を返しません! WHERE条件が満たされていないため、NULLと表示されます

    2番目の結果:クエリは行を返しますが、フィールドの値はNULLです。この場合、COALESCEは正常に機能します

    解決するには、これを試すことができます:

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

    大丈夫か教えてください



    1. MySQLを使用したEnityフレームワーク

    2. 着信電子メールメッセージをmySQLデータベースに挿入する方法は?

    3. Windows認証ユーザーとしてOLEDBプロバイダーエラーのインスタンスを作成できません

    4. SQLを使用してテキストフィールドの単語数の統計を決定する