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

Problema con valores NULL en tabla

Estas en el tema de Problema con valores NULL en tabla en el foro de PostgreSQL en Foros del Web. Saludos foro. Tengo una tabla en donde caen los registros de una pagina web, bueno hay un campo que se llama "recibido_materia" , que al ...
  #1 (permalink)  
Antiguo 22/02/2010, 14:31
 
Fecha de Ingreso: enero-2006
Mensajes: 169
Antigüedad: 18 años, 10 meses
Puntos: 0
Sonrisa Problema con valores NULL en tabla

Saludos foro.

Tengo una tabla en donde caen los registros de una pagina web, bueno hay un campo que se llama "recibido_materia", que al momento de hacer el registro le doy el valor NULL por default en la tabla. Tomando en cuenta que el valor de "recibido_material" cambia a "1" conforme el usuario envie un documento "x" (ESTO EN UNA SEGUNDA ENTRADA A LA PAGINA WEB).

Teniendo este preambulo tengo el siguiente detalle.

A la hora de hacer la query del tipo

Código:
SELECT reg_ponentes.* FROM reg_ponentes WHERE reg_ponentes.aceptada=1 AND reg_ponentes.extenso_recibido!=1
ó

Código:
SELECT reg_ponentes.* FROM reg_ponentes WHERE reg_ponentes.aceptada=1 AND reg_ponentes.extenso_recibido<>1
dichas querys no me regresan ningun resultado y al menos un registro tiene el campo "aceptada=1" y el campo "extenso_recibido" tiene un buen de registros con el valor "NULL"

Gracias por la ayuda de antemano.
__________________
"La adulación es una moneda que empobrece al que la recibe"
  #2 (permalink)  
Antiguo 22/02/2010, 16:11
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: Problema con valores NULL en tabla

No entendí bien

Podrías ponerlo con un ejemplo?

Cual es el problema y cual es la solución que quieres?

saludos kre94
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 22/02/2010, 16:25
 
Fecha de Ingreso: enero-2006
Mensajes: 169
Antigüedad: 18 años, 10 meses
Puntos: 0
De acuerdo Respuesta: Problema con valores NULL en tabla

A ver mas despacio.

El chiste es que en una tabla tengo 2 campos que determinan una query, estos campos por ejemplo tienen los siguientes valores.

id, aceptada, material_recibido
1, 1, NULL
2, 1, 1
3, 1, NULL


y la query es:


Código:
SELECT reg_ponentes.* FROM reg_ponentes WHERE reg_ponentes.aceptada=1 AND reg_ponentes.material_recibido!=1
Esta quey me deberia de entregar el registo numero 1 y 3 como resultado, pero no me regresa nada, ni un registro.

A ver si me explique.
__________________
"La adulación es una moneda que empobrece al que la recibe"
  #4 (permalink)  
Antiguo 22/02/2010, 20:23
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: Problema con valores NULL en tabla

NULL en postgres es nada. Si tienes un campo con null, solo será comparable con otros registros null.

Lo que puedes hacer es validar poner otra cosa en caso de que sea null el campo haciendo uso de la funciión coalesce.

Código SQL:
Ver original
  1. pruebas=> SELECT *FROM tabla1;
  2.  id | aceptada | material_recibido
  3. ----+----------+-------------------
  4.   1 |        1 |
  5.   2 |        1 |                 1
  6.   3 |        1 |
  7. (3 filas)
  8.  
  9.  
  10. pruebas=> SELECT *FROM tabla1
  11. pruebas-> WHERE aceptada=1
  12. pruebas-> AND COALESCE(material_recibido,99)!=1;
  13.  id | aceptada | material_recibido
  14. ----+----------+-------------------
  15.   1 |        1 |
  16.   3 |        1 |
  17. (2 filas)

En el ejemplo lo comparo con 99, pero puede ser con cualquier numero o texto en caso de que el campo lo sea.

saudos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming

Etiquetas: null, tablas
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 11:51.