
Funcion concatenar con filtro
Publicado por FERMAN (2 intervenciones) el 04/01/2014 19:58:14
Buen dia, necesito realizar una consulta de concatenacion pero que maneje filtros o alguna sentencia IF.
He utilizado las sig consultas
"SELECT courses, CONCAT_WS(' y ', initialdate,enddate) AS date FROM takencourses WHERE id = '$valor' "
"SELECT courses, CONCAT(initialdate,' y ',enddate) AS date FROM takencourses WHERE id = '$valor' "
"SELECT courses, CONCAT(IF(initialdate IS NULL,'',initialdate),' y ',IF(enddate IS NULL,'',enddate) SELECT initialdate) AS date FROM takencourses WHERE id = '$valor' "
Pero no puedo obtener lo que necesito.
Tengo la tabla takencourses
Contiene los campos id, courses, initialdate, enddate.
Lo que he podido realizar es que concatene los campos initialdate y enddate : Ejemplo: 10-12-2013 y 11-10-2013
Pero tambien necesito una consulta que compruebe que si el campo enddate esta vacio no concatene el separador 'y' al valor del campo initialdate.
Con las consultas que mostre lo que hace es lo sig. Ejemplo: 20-12-2013 y pero necesito que si el campo enddate esta vacio muestre solo el campo initialdate: 20-12-2013
Gracias por su tiempo
He utilizado las sig consultas
"SELECT courses, CONCAT_WS(' y ', initialdate,enddate) AS date FROM takencourses WHERE id = '$valor' "
"SELECT courses, CONCAT(initialdate,' y ',enddate) AS date FROM takencourses WHERE id = '$valor' "
"SELECT courses, CONCAT(IF(initialdate IS NULL,'',initialdate),' y ',IF(enddate IS NULL,'',enddate) SELECT initialdate) AS date FROM takencourses WHERE id = '$valor' "
Pero no puedo obtener lo que necesito.
Tengo la tabla takencourses
Contiene los campos id, courses, initialdate, enddate.
Lo que he podido realizar es que concatene los campos initialdate y enddate : Ejemplo: 10-12-2013 y 11-10-2013
Pero tambien necesito una consulta que compruebe que si el campo enddate esta vacio no concatene el separador 'y' al valor del campo initialdate.
Con las consultas que mostre lo que hace es lo sig. Ejemplo: 20-12-2013 y pero necesito que si el campo enddate esta vacio muestre solo el campo initialdate: 20-12-2013
Gracias por su tiempo
Valora esta pregunta


0