bjesua bjesua - 3 months ago 13
MySQL Question

apply changes to case when on mysql

i´m tryin to apply some changes to this query, maybe someone can correcting my query to meke it work.

SELECT
ID_REVISION_MATERIAL,
NO_DOCTO_ORDEN,
INTERMEDIARIO,
CODIGO_DE_CLIENTE,
CODIGO_INTERNO_AVISO,
USUARIO_ENVIA,
FECHA_RECEPCION,
CASE ID_ESTADO_MATERIAL
WHEN ESTADO_APRO_RECHA = 'RECHAZADO' THEN ID_ESTADO_MATERIAL = ''
WHEN ESTADO_APRO_RECHA = 'APROBADO' THEN ID_ESTADO_MATERIAL = ''
ELSE ID_ESTADO_MATERIAL
END AS ID_ESTADO_MATERIAL,
CAMBIO,
ID_REVISOR,
FECHA_INI_REVISION,
FECHA_FIN_REVISION,
FECHA_BITACORA,
NUM_PAGINA,
ESTADO_APRO_RECHA
FROM RM_BITACORA
WHERE
CODIGO_INTERNO_AVISO = 'UNI1027_T2644632' AND
NUM_PAGINA = '2'
ORDER BY ID_RM_BITACORA ASC


thank you

Answer

I think you want something like this

CASE
    WHEN ESTADO_APRO_RECHA IN ('RECHAZADO', 'APROBADO') THEN ''
    ELSE ID_ESTADO_MATERIAL
END AS ID_ESTADO_MATERIAL

http://dev.mysql.com/doc/refman/8.0/en/control-flow-functions.html