4

数学でmysqlif/ thenステートメントを実行することは可能ですか?

言う...

    if product_name = "apple"
    then divide product_price by 4
    else do no math on product_price

このようなものに関するチュートリアルへのリンク、またはヘルプ/指示をいただければ幸いです。

私はbluefeetの方法を使い終えてこれで終わりました。将来必要になる可能性のある他の人のためのサンプル、

    SELECT DISTINCT
    12345_parts.*,
    12345_parts.install_meter +
    12345_parts.meter_life -
    12345_parts.prior_meter
    AS nextdue,
       CASE 
          WHEN 12345_parts.part_name = "JET ENGINE"
          THEN 12345_parts.meter_life + 12345_parts.install_meter - 12345_parts.prior_meter - status_12345.meter / 4
          ELSE 12345_parts.meter_life + 12345_parts.install_meter - 12345_parts.prior_meter - status_12345.meter
       END AS remainder
    FROM 12345_parts, status_12345
    WHERE 12345_parts.overhaul LIKE '%HLY%'
    AND 12345_parts.active='ACTIVE'
4

5 に答える 5

4

これを試して:

SELECT IF(product_name = "apple", product_price / 4, product_price) price 
FROM products; 
于 2013-01-04T16:48:12.970 に答える
1

あなたの例から、あなたはただすることができます:

IF (product_name = "apple")
BEGIN 
  SELECT product_name, (product_price/4)
  FROM table
END 
于 2013-01-04T16:52:27.283 に答える
1

CASE次のステートメントを使用することもできます。

select 
   case 
      when product_name = 'apple' 
      then product_price/4
      else product_price
   end as price
from yourtable
于 2013-01-04T17:05:03.157 に答える
0

IFThen命令

MySQLサイトから直接。

于 2013-01-04T16:48:09.897 に答える
0

あなたはこれを試すことができます-

select If(product_name = "apple",product_price/4,product_price) as cal from tableName
于 2013-01-04T16:48:31.403 に答える