アプリ版:「スタンプのみでお礼する」機能のリリースについて

SQL server 2005についての質問です。

ISNULL関数を使うと、Nullをゼロとして取り出せることがわかりました。
しかし、空文字をゼロとして取り出すことはできないようでした。

Nullと空文字が入り混じったカラムを対象に、Nullだけでなく空文字もゼロとして取り出す関数などはあるでしょうか?

以上、どうぞよろしくお願い致します。

A 回答 (2件)

空文字が存在しうるのはvarchar,charなどの文字列型のフィールドだけですが、ゼロとして取り出すんですね。


(普通にはISNULL(FIELD,'')として、両方空文字として取り出すことが多いですが)

ともかく、以下のようにすれば目的は満たせます。
SELECT ISNULL(NULLIF(FIELD,''),'0') FROM TABLE
    • good
    • 1
この回答へのお礼

jamshid6さん
ISNULL関数とNULLIF関数を組み合わせるんですね。
大変参考になりました!
ご回答ありがとうございました。

お礼日時:2008/08/24 21:37

参考意見として。


もしこのSQLの結果をVBなどの言語を使って取り出しているなら、
取り出し側で「Nullや空文字なら0を返す」関数を作ってそれを通すという方法もあります。
    • good
    • 0
この回答へのお礼

khazad-leftyさん
なるほど。。
解決策の候補として、参考にさせていただきます。
ご回答ありがとうございました。

お礼日時:2008/08/24 21:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す