Ver Mensaje Individual
  #2 (permalink)  
Antiguo 05/02/2016, 14:44
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: where condicion que que el campo no este vacio

Vamos a hacer una aclaración: Hay dos situaciones donde un campo de un registro puede estar vacío: 1) Es NULL, y 2) Contiene un caracter vacío.
Ambas situaciones no son iguales.

NULL no es un dato, por lo que no puede usarse una comparación lógica para detectarlo. NULL es un estado de indefinición, y no es lo mismo que tener un espacio en blanco, un vacío o un cero.
UN caracter vacío es un caracter real, y si lo validas como ULL resultará FALSE, ya que no es NULL.

En definitiva, para descartar los "vacíos", hay que restringir ambas situaciones, ya que por errores de programación pueden haber ingresado un caracter vacío en lugar de NULL, lo que te podría dar resultados erroneos.

La idea sería:
Código MySQL:
Ver original
  1. SELECT * FROM  `weblog`
  2. WHERE  `estado_publicado` = 1
  3.     AND  `publicar_inicio` = 0
  4.    AND  (`foto_uno` IS NOT NULL OR  `foto_uno` <>'')
  5. ORDER BY  RAND() LIMIT 0 , 5

Cuidado: Los paréntesis son necesarios.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)