1

このクエリを実行して、一時テーブルにデータを入力し、そこからエクスポートします。priceSingleは、運賃を2倍にするだけで計算されます。ただし、一部の行では、とにかくカテゴリが1つの運賃であるため、2倍にしたくありません。クエリは実際にはPHPの文字列に埋め込まれていますが、SQLは次のようになります。

INSERT INTO temp
    SELECT cruises.code AS sailingId, live, 'USD', 'optioncode', 'rateOptionName', '2',
           category AS cabinCategory, fare*2 AS priceSingle, fare AS priceDouble,
           supplements_usa.adult AS priceAdditional
      FROM fares_usa, supplements_usa, cruises
     WHERE fares_usa.cruise_id = supplements_usa.cruise_id
       AND cruises.id = fares_usa.cruise_id AND cruises.live = 'Y'

5または10に等しいfare*2場合、どうすれば回避できますか?category

4

1 に答える 1

5
CASE WHEN category = 5 OR category = 10 THEN fare ELSE fare * 2 END
于 2012-04-27T15:01:02.957 に答える