0

私はmysqlビューを稼働させています。

concat(`dp`.`fld_name`,
            ' ',
            `mt`.`fld_model`,
            ' ',
            `m`.`fld_diameter_nominal`) AS `fld_meter_type_info`,

今私がやりたいのは基本的な if else ステートメントです。

if(fld_type == 1 || fld_type == 4 ) -> get rid of fld_diameter_nominal in concat
else -> same concat

これをどのように視野に入れるか?

編集:解決済み

concat(dp.fld_name,
        ' ',
        mt.fld_model,
        ' ',
        case when `m`.`fld_type` in (1,4)
             then '' 
             else m.fld_diameter_nominal
        end
   ) AS fld_meter_type_info,

御時間ありがとうございます

4

2 に答える 2

2
concat(dp.fld_name,
            ' ',
            mt.fld_model,
            ' ',
            case when fld_type in (1,4)
                 then '' 
                 else m.fld_diameter_nominal
            end
       ) AS fld_meter_type_info
于 2013-10-02T13:44:59.973 に答える
0

これを試して::

Select 
CASE WHEN fld_type in (1,4)
THEN oncat(`dp`.`fld_name`,' ',`mt`.`fld_model`)
ELSE
concat(`dp`.`fld_name`,' ', `mt`.`fld_model`,' ', `m`.`fld_diameter_nominal`) END AS `fld_meter_type_info`
于 2013-10-02T13:46:43.637 に答える