Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

where condicion que que el campo no este vacio

Estas en el tema de where condicion que que el campo no este vacio en el foro de Mysql en Foros del Web. Hola estaba haciendo mi consulta en otra sección del foro y me dicen que aqui me pueden ayudar y estoy seguro que si tengo este ...
  #1 (permalink)  
Antiguo 05/02/2016, 14:32
Avatar de webelgrillo  
Fecha de Ingreso: marzo-2008
Mensajes: 142
Antigüedad: 16 años, 1 mes
Puntos: 0
where condicion que que el campo no este vacio

Hola estaba haciendo mi consulta en otra sección del foro y me dicen que aqui me pueden ayudar y estoy seguro que si

tengo este código en php

Código MySQL:
Ver original
  1. SELECT * FROM  `weblog`
  2. WHERE  `estado_publicado` = 1
  3.     AND  `publicar_inicio` = 0
  4.    AND  `foto_uno` = NO Este Vacio
  5. ORDER BY  RAND() LIMIT 0 , 5
Cita:
Editado: Código de programación no permitido en foros de Bases de Datos.
Leer las normas del foro, por favor.
quiero saber como se le dice en la base de datos mysql que el campo foto_uno no este vacio y que imprima

por que si esta vacío no quiero que lo muestre como hago eso.

gracias por su ayuda

Última edición por gnzsoloyo; 05/02/2016 a las 14:39
  #2 (permalink)  
Antiguo 05/02/2016, 14:44
Avatar de 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)
  #3 (permalink)  
Antiguo 05/02/2016, 14:57
Avatar de webelgrillo  
Fecha de Ingreso: marzo-2008
Mensajes: 142
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: where condicion que que el campo no este vacio

Gracias por la respuesta actualmente mi codigo ya esta asi

tiene alguna diferencia?
Código SQL:
Ver original
  1. SELECT * FROM  `weblog`
  2. WHERE  `estado_publicado` = 1 AND  `publicar_inicio` = 0
  3.  AND  `tipo_contenido` NOT IN ('blog',  'vid',  'company') AND  `foto_uno` != ''
  4. ORDER BY  RAND() LIMIT 0 , 5

gracias por tu ayuda

Última edición por gnzsoloyo; 05/02/2016 a las 16:26
  #4 (permalink)  
Antiguo 05/02/2016, 15:08
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: where condicion que que el campo no este vacio

si hay una diferencia, que el operador para diferencias en mysql es <> y tu estas usando !=.....
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 05/02/2016, 16:27
Avatar de 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

No estás considerado el NULL... Parece que no entendiste nada de lo que dije.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: campo, select, sql, vacio
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:07.