2012-02-22 11 views
0

が私のSQLクエリーに含まれています - 以下のように1行でvarcharが返されます - ケースステートメントを使用する必要がありますAC.Type_Name = 'None'次に、 'なし'という単語ではなくTypeNameとして ''を格納する必要があります。誰もがこれを行う最も簡単な方法を知っていますか?ありがとうございました。SQLクエリーでケースを使用すると、正しい結果が返されない

AC.Type_Name As TypeName, 

これはストアドプロシージャの一部で使用されます。テーブルには格納されません。これは、asp.netアプリケーションで使用するためのものです。 (私は、一時テーブルを返し、その後、以下の言ったようにredfilterでアップデートを使用し、その後、一時テーブルに結果を格納することができますが、私は可能

答えて

1

Iは、上記コードの参照が格納されているのselect句のフィールドを指すと仮定しています手順。そのような場合、あなたは次のようにそれを修正することができるはずです。

(case when AC.Type_Name = 'None' then '' else AC.Type_Name end) as TypeName 

この文はAC.Type_Nameの値が「どれも」ではない場合を除きAC.Type_Nameの値が含まれます型名と呼ばれる列を返します。その場合は空の文字列として返します。

+0

これが機能しました。ありがとうございました。 – njj56

1
update MyTable 
set Type_Name = case when @input = 'None' then '' else @input end 
where ... 
+0

ありがとうございますが、これはストアドプロシージャの一部で使用されています。テーブルには格納されません。これは、asp.netアプリケーションで使用するためのものです。私は一時テーブルに結果を保存し、これを行い、一時テーブルを返すことができましたが、私は可能な限り速い方法を探していました。 – njj56

+0

この返信は、元の投稿に文脈がないことが原因だと思います。そのコンセプトはスポットです。 SELECTの場合AC.Type_Name = 'なし' THEN '' ELSE AC.TypeName END AS TypeName –

+0

最初の投稿を編集 – njj56

0

最も簡単な方法を探していたあなたは」場合を使用することができるはずです)' 関数。

SELECT IF(AC.Type_Name = 'なし'、 ''、AC.TypeName)FROM ....

関連する問題