Título: duda sql Publicado por: sebapoli00 en 20 Noviembre 2019, 00:25 am buenas, tengo que hacer una consulta que implica saber si una persona asistio a varios eventos, mostrar la fecha de el ultimo evento al que asistio y sino asistio a ninguno poner que no asistio
asi lo venia haciendo hasta el momento Código
el asunto es que luego de buscar si asistio, no logro poner la ultima fecha del evento al que asistio intente a través de una subconsulta que la devuelva, pero no lo he logrado el resto del codigo funciona correctamente porque si en vez de la subconsulta le pongo x cosa por ejemplo 'asistio' me compila y la salida me la devuelve correctamente como puedo hacer funcionar esto? alguna sugerencia? Título: Re: duda sql Publicado por: Carloswaldo en 20 Noviembre 2019, 00:53 am No me parece que sea necesario hacer una subconsulta. Yo haría algo así:
Código
No dices en qué motor estás trabajando, esto lo hice en PostgreSQL pero asumo que puedes hacer algo parecido en otros motores. Además no sé cuál es la estructura de las tablas pero estoy asumiendo que es una relación muchos a muchos entre persona y evento que se rompe con la tabla asistio. Título: Re: duda sql Publicado por: sebapoli00 en 20 Noviembre 2019, 11:49 am Estoy trabajando en sql developer y la tabla evento y persona se relacionan con la relacion asistio que va de 0 a n
No estoy en mi casa como para probar ese código pero en viento pueda te digo! me lanza el mismo error que tenia antes: ORA-00932: tipos de dato inconsistentes: se esperaba DATE se ha obtenido CHAR 00932. 00000 - "inconsistent datatypes: expected %s got %s" *Cause: *Action: Error en la línea: 232, columna: 2 MOD: No hacer doble post. Usa el boton modificar. Título: Re: duda sql Publicado por: Carloswaldo en 20 Noviembre 2019, 14:31 pm El problema es que en una misma columna de resultado intentas retornar datos de tipos diferentes (DATE en el caso de que hayan asistido, y VARCHAR si no han asistido), así que tienes que incluir un casting para que funcione. En mi ejemplo el "::text" era el casting, como ya veo que estás en Oracle, tendrás que hacer el casting así:
Código
Cuéntanos cómo te fue. Título: Re: duda sql Publicado por: sebapoli00 en 20 Noviembre 2019, 20:10 pm Si! Ya lo solucione de esa manera, muchisimas gracias por la ayuda!
|