2017-06-28 10 views
1

CASEステートメントで異なる代数式(+、 - 、*、/)を使用しようとしていますが、何か問題があります。CASEステートメントでSQLの代数を使用する

基本的な構文は、通貨はポンド(少しpはペンスを意味する)私はそれがGBP(ポンドにすなわちペンス)となるように、それは100を掛けたことにしたい

ここでは私のクエリであれば、ということです。私は何か簡単なものを見逃していると思う!


select Currency, FXrate 
case 
    when Currency = 'GBp' 
    then FXrate = FXrate * 100 
    end 
from FXdatabase 
+0

いただきました!あなたはuはオペレータのように使用してみました、ではなく=の取得中にエラー? –

+1

サンプルデータと望ましい結果が実際に役立ちます。 –

+0

はあなたが行っている構文を提供することができ、これまでにしてください –

答えて

2

おそらく、あなたはこのような何かをしたい:

select Currency, 
     (case when Currency = 'GBp' then FXrate * 100 else FXrate 
     end) as FXrate 
from FXdatabase; 
+1

私はほとんど同じ答えを出しました( 'else'部分を除いて)、私は2番目です。私は私を削除し、これをupvotedしました。 –

+1

こんにちはGordanさん、ありがとうございました!私は自分のクエリを更新しました(基本的にあなたのコピーと貼り付け)、次のエラーが表示されます: "'='の近くの構文が正しくありません。 別の表現が必要ですか? –

+2

case文の中から 'FXrate ='を失いたいです。 –

関連する問題