SELECT Concat(mp.cHospital ,',',mp.cHospital1,',',mp.cHospital2) as Hospital FROM TBL
no quiero volver valor nulo,MySQL no nula
cómo comprobar no nulo o cómo hacer cond isset en consulta
SELECT Concat(mp.cHospital ,',',mp.cHospital1,',',mp.cHospital2) as Hospital FROM TBL
no quiero volver valor nulo,MySQL no nula
cómo comprobar no nulo o cómo hacer cond isset en consulta
Por definición (casi) cualquier operación con NULL dará como resultado NULL ya que NULL significa "sin definir". Interpreto su pregunta de que ya sea cHospital o cHospital1 o cHospital3 podría ser NULL, que desea verificar. La pregunta es: ¿qué debería pasar? ¿Quieres reemplazar el campo con un movimiento vacío y luego el concat o todo?
Supongo que el primero. que podría tener este aspecto:
SELECT Concat(
IFNULL(mp.cHospital, ''),
',',
IFNULL(mp.cHospital1,''),
',',
IFNULL(mp.cHospital2,'')) AS Hospital
FROM TBL
IFNULL devuelve la primera parte, a menos que su NULL donde vuelve la segunda parte (cadena vacía aquí).
http://dev.mysql.com/doc/refman/5.1/en/control-flow-functions.html#function_ifnull
Usted puede utilizar case
condición para esto http://dev.mysql.com/doc/refman/5.0/en/case-statement.html
COALESCE(val1, val2, val3, ...)
devolverá el primer valor no nulo, por ejemplo
COALESCE(@val, '')
volverá cadena vacía si @val
es nulo.
Recomiendo usar la función CONCAT_WS. Esto funciona de acuerdo a lo que necesita. sería algo así como
SELECT CONCAT_WS(',', mp.cHospital, mp.cHospital1, mp.cHospital2) as Hospital FROM TB
L
http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_concat-ws
Saludos !! !
[alt text] [1] ver captura de pantalla PLZ [1]: http://img407.imageshack.us/img407/711/mysqlconcatprob.jpg – Bharanikumar
no sé lo que quiere. – johannes
Probé lo anterior si la condición nula, incluso a través de la null ans – Bharanikumar