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

Sustituir valores NULL por 0 en una tabla

Estas en el tema de Sustituir valores NULL por 0 en una tabla en el foro de SQL Server en Foros del Web. Hola a todos! Continúan mis problemas con los INSERT INTO... Después de rellenar algunas tablas habiendo dejado campos a NULL he decidido cambiar esto y ...
  #1 (permalink)  
Antiguo 25/03/2009, 06:17
 
Fecha de Ingreso: diciembre-2008
Mensajes: 16
Antigüedad: 15 años, 4 meses
Puntos: 0
Sustituir valores NULL por 0 en una tabla

Hola a todos!

Continúan mis problemas con los INSERT INTO... Después de rellenar algunas tablas habiendo dejado campos a NULL he decidido cambiar esto y que a partir de ahora exista un valor por defecto por si se deja en blanco, para mantener la integridad y demás... El problema es que quiero introducir el valor 0 en un campo siempre que éste sea NULL y no sé cómo hacerlo. Con lo siguiente lógicamente me salta un error diciendo que la subconsulta ha devuelto más de un valor.

Código:
WHILE (SELECT CustomerCode FROM Cliente) IS NULL
INSERT INTO Cliente(CustomerCode)
VALUES ('0')
Muchas gracias por vuestra ayuda.
  #2 (permalink)  
Antiguo 25/03/2009, 08:28
Avatar de usuariobaneado  
Fecha de Ingreso: diciembre-2007
Mensajes: 402
Antigüedad: 16 años, 4 meses
Puntos: 5
Respuesta: Sustituir valores NULL por 0 en una tabla

Saludos, es fácil:


UPDATE Tabla SET campo=0 WHERE campo IS NULL
__________________
Yo quiero ser el pelucón del barrio
  #3 (permalink)  
Antiguo 25/03/2009, 09:44
 
Fecha de Ingreso: diciembre-2008
Mensajes: 16
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Sustituir valores NULL por 0 en una tabla

Efectivamente funcionó a la perfección. Sencillo, pero muy complicado sin tu ayuda usuariobaneado. Muchas gracias!
  #4 (permalink)  
Antiguo 25/03/2009, 10:08
Avatar de usuariobaneado  
Fecha de Ingreso: diciembre-2007
Mensajes: 402
Antigüedad: 16 años, 4 meses
Puntos: 5
Respuesta: Sustituir valores NULL por 0 en una tabla

Así también puedes hacer select de los campos que tienen null

select * from tabla where campo IS NULL
__________________
Yo quiero ser el pelucón del barrio
  #5 (permalink)  
Antiguo 25/03/2009, 10:25
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Sustituir valores NULL por 0 en una tabla

O tambien cambiar "temporalmente" los valores NULL, por algo mas, por ejemplo:

SELECT ISNULL(CAMPO, 10) FROM TUTABLA

En este caso, el campo con valor NULL, se cambia por 10
  #6 (permalink)  
Antiguo 25/03/2009, 10:49
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: Sustituir valores NULL por 0 en una tabla

Cita:
Iniciado por iislas Ver Mensaje
O tambien cambiar "temporalmente" los valores NULL, por algo mas, por ejemplo:

SELECT ISNULL(CAMPO, 10) FROM TUTABLA

En este caso, el campo con valor NULL, se cambia por 10
En realidad no se CAMBIA el NULL por un 10, sino se MUESTRA un 10 por un NULL. A nivel del contenido de la BBDD, donde habia un NULL seguirá habiendo un NULL, pero a nivel de visualización se verá un 10.
__________________
Aviso: No se resuelven dudas por MP!
  #7 (permalink)  
Antiguo 25/03/2009, 11:33
Avatar de usuariobaneado  
Fecha de Ingreso: diciembre-2007
Mensajes: 402
Antigüedad: 16 años, 4 meses
Puntos: 5
Respuesta: Sustituir valores NULL por 0 en una tabla

Claro pero el resultado del select lo guardas en algún otro lado y con eso trabajas. No se ha dicho que de esa manera se cambia el valor de la tabla.

Saludos
__________________
Yo quiero ser el pelucón del barrio
  #8 (permalink)  
Antiguo 03/11/2011, 20:30
gjr
 
Fecha de Ingreso: julio-2011
Mensajes: 3
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Sustituir valores NULL por 0 en una tabla

Señores como estan!!! soy nuevo por estos lados y precisamente tengo este inconveniente, lo que pasa es que se me generan unos valores nulos, pero al momento de mostrarlos en un reporte en un campo que se llama valor aparece la palabra Null, y esa palabra la quiero reemplazar por cero, pero no me da de ninguna manera, intente implementar esto SELECT ISNULL(valor,0) FROM movimiento_contable, y nada, eso no da, me sale un error que dice "no existe la función isnull(character varying, integer)".
  #9 (permalink)  
Antiguo 04/11/2011, 06:39
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: Sustituir valores NULL por 0 en una tabla

que tipo de dato es tu campo, si tu campo es de tipo varchar y lo quieres poner un 0 seria select isnull(campo,'0') otra pregunta, que manejador de base de datos estas usando, y una pregunta mas......porque repites tu pregunta en 2 lados? porque no creaste una pregunta nueva?
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
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:14.