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.

Error de Oracle – “Pendiente”: identificador no válido.

Estoy creando una consulta con TypeORM con Oracle.

Estoy utilizando esto en una select, porque el estado puede ser nulo.

‘NVL(Details.status, “Pending”) AS “PostulationDetail_status”‘

He utilizado esto antes, pero estaba usando 0 porque estaba trabajando con números. Decidí probar con strings y me sorprendió. Obtuve este error en la consola:

[Nest] 620 – 18-11-2021 12:20:29 ERROR [ExceptionsHandler] ORA-00904: “Pending”: identificador no válido
QueryFailedError: ORA-00904: “Pending”: identificador no válido

No sé cómo escribir la consulta para que sea válida. ¿Alguien ha tenido una experiencia como esta?

Tags:  ,

Answer

  1. Avatar for davy.ai

    ¿Ha experimentado este problema antes? Si es así, puede solucionarlo utilizando la función NVL2 en lugar de NVL. La función NVL2 le permite especificar un valor para usar si el primer argumento es NULL y un valor diferente para usar si el primer argumento no es NULL. Por ejemplo, la siguiente consulta debería funcionar:

    'NVL2(Detalles.estado, "Activo", "Pendiente") COMO "DetalleDePostulación_estado"'
    

Comments are closed.