0

バックグラウンドで SQL を使用するプログラムを使用していますが、問題が発生しました。

データ フィールドでコスト マークアップを計算するための SQL 式が要求されました。私は Excel を使用して複雑な計算を行ったことがありますが、SQL は異なり、理解するのに苦労しているため、それがどのように機能するかはある程度理解できます。ともかく ...

式コードに次のように言う必要があります。

If column A is between   $0-$9.99   add 70% 
If column A is between  $10-$14.99  add 30%
If column A is between  $15-$24.99  add 21% 
If column A is between  $25-$89.99  add 14.9%
If column A is between  $90-$244.99 add 10%
If column A is between $245-$499.99 add 9%
If column A is between $500-1999.99 add 6.9%
If column A is         $3000 and up add 7.5 %

すべて 1 つの文字列 / 式である必要があります

また、小数点第 2 位を四捨五入する必要があります。

何かが欠けていたり、間違った表現を使用している場合は、ご容赦ください - SQL初心者はこちら

私を助けてください!!ありがとうございました

4

1 に答える 1

0

ケースを使用します。

select cast(
  case
    when columnA between 0 and 9.99 then columnA * 1.7
    when columnA between 10 and 14.89 then columnA * 1.3
    -- etc for other value ranges
    else columnA
  end as decimal(10, 2)) as columnA_plus_fee
于 2013-09-20T04:40:04.150 に答える