質問: pm.post_id THEN pm.meta_value END ) as 発注者_都道府県コード ``` を実行すると、JPXXの形式で、たとえば、JP13と出力されます。JIS規格による都道府県コードのようです。 JP01と出力されたときは、北海道と置換 JP13と出力されたときは、東京都と置換 としたく、SELECTのなかで置換させたいと考えていますが、可能でしょうか? MySQLのSELECT内のCASEでよくあるのは、下記のようなものだと思います。 CASE state WHEN 'JP01' THEN '北海道' WHEN 'JP13' THEN '東京都' ELSE '該当なし' END 今回は、CASE WHEN THEN で取得した値が、JP01のときは、北海道に置換 のため、THENの後に、更にCASE WHEN THENを入れられず、実現方法を探しています。 WooCommerceプラグインを使ったWordPressにおいて、都道府県名はコードとしてクエリで出力されますので、これを東京都のような都道府県名で出力させたいです。
回答: CASE式をネストさせればよいのでは ``` CASE MAX( CASE WHEN pm.meta_key = '_billing_state' and p.ID = pm.post_id THEN pm.meta_valueEND ) WHEN 'JP01' THEN '北海道' WHEN 'JP13' THEN '東京都' ELSE '該当なし' END AS `発注者_都道府県` ```