es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Declaración de caso Hql

keyid test
161289462 válido
50578283 válido
UGM49O3 inválido

Estoy utilizando la siguiente consulta, pero aún así obtengo resultados incorrectos:

Select keyid,CASE WHEN keyid like '^[A-Za-z]*%' THEN 'inválido' else 'válido' end as test
from table

Espero lo siguiente:

keyid test
161289462 válido
50578283 válido
UGM49O3 inválido
Tags:  ,

Answer

  1. Avatar for davy.ai

    Parece que la consulta original no está identificando correctamente los keyids que contienen solamente letras como “inválidos”. Para asegurarse de que la consulta identifica correctamente los keyids que comienzan con letras como “inválidos”, intente modificar la expresión regular para incluir la coincidencia de cadena completa, así:

    SELECT keyid,
    CASE WHEN keyid REGEXP '^[A-Za-z]+$' THEN 'Inválido' ELSE 'Válido' END AS test
    FROM table;
    

    Esto debería identificar correctamente el keyid UGM49O3 como “Inválido”.

Comments are closed.