• Miércoles 20 de Noviembre de 2024, 14:20

Autor Tema:  Valores Null  (Leído 3997 veces)

gokufast

  • Miembro activo
  • **
  • Mensajes: 79
    • Ver Perfil
Valores Null
« en: Miércoles 29 de Agosto de 2007, 09:19 »
0
hay algun trigger, procedure, function scrip algo que me pueda convertir valores null a 0 u otro valor?


o de lo contrario como poder sumar o restar valores que contengan null


gracias
What Did One Snowman Say To The Other Snowman???

Do you smell carrots??

jpaler

  • Miembro MUY activo
  • ***
  • Mensajes: 479
    • Ver Perfil
Re: Valores Null
« Respuesta #1 en: Miércoles 29 de Agosto de 2007, 14:46 »
0
¿y q tal si especificas q solo te sume aquellos valores q no son null?

gokufast

  • Miembro activo
  • **
  • Mensajes: 79
    • Ver Perfil
Re: Valores Null
« Respuesta #2 en: Miércoles 29 de Agosto de 2007, 15:19 »
0
seria hacer la prueba, pero como puedo hacer eso
What Did One Snowman Say To The Other Snowman???

Do you smell carrots??

Mollense

  • Miembro de PLATA
  • *****
  • Mensajes: 1755
  • Nacionalidad: ar
    • Ver Perfil
    • http://solocodigo.com/
Re: Valores Null
« Respuesta #3 en: Miércoles 29 de Agosto de 2007, 18:25 »
0
¿De que tipo es el campo que contiene los valores?
"Los que renuncian son más numerosos que los que fracasan" H.F.
"No se cómo sería la III Guerra Mundial, pero la cuarta sería con piedras" A.E.
"Quién no fía no es de fiar..."


...no te quedes mirando.

gokufast

  • Miembro activo
  • **
  • Mensajes: 79
    • Ver Perfil
Re: Valores Null
« Respuesta #4 en: Miércoles 29 de Agosto de 2007, 18:41 »
0
es de tipo decimal (14,2)
What Did One Snowman Say To The Other Snowman???

Do you smell carrots??

Mollense

  • Miembro de PLATA
  • *****
  • Mensajes: 1755
  • Nacionalidad: ar
    • Ver Perfil
    • http://solocodigo.com/
Re: Valores Null
« Respuesta #5 en: Miércoles 29 de Agosto de 2007, 18:59 »
0
Yo creo que no hay necesidad de realizar algo en especial, directamente realiza las sumas y restas, los valores null son convertidos directamente a 0.
No lo probé todavía pero podrías ir viendo que pasa.

 :comp:
"Los que renuncian son más numerosos que los que fracasan" H.F.
"No se cómo sería la III Guerra Mundial, pero la cuarta sería con piedras" A.E.
"Quién no fía no es de fiar..."


...no te quedes mirando.

ArKaNtOs

  • Miembro de PLATA
  • *****
  • Mensajes: 1253
  • Nacionalidad: mx
    • Ver Perfil
Re: Valores Null
« Respuesta #6 en: Miércoles 29 de Agosto de 2007, 19:33 »
0
select sum(campo) as suma from mi_tabla where campo > 0;

 :P

LeGatoRojo

  • Miembro HIPER activo
  • ****
  • Mensajes: 552
  • Nacionalidad: mx
    • Ver Perfil
    • LeGatoRojo
Re: Valores Null
« Respuesta #7 en: Miércoles 29 de Agosto de 2007, 19:52 »
0
puedes intentar un if

Código: Text
  1.  
  2. SELECT SUM(IF(val IS NULL,0,val)) FROM tabla
  3.  
  4.  
Un día desperte y en lugar de dientes tenía colmillos, en lugar de manos, tenía garras; pero lo más impactante fue el color escarlata de mi pelaje.

gokufast

  • Miembro activo
  • **
  • Mensajes: 79
    • Ver Perfil
Re: Valores Null
« Respuesta #8 en: Miércoles 29 de Agosto de 2007, 21:26 »
0
no lo convierte deirectamente a 0 porque al hacer operaciones con valores null, no me tomaba en cuenta los datos que tenian null
What Did One Snowman Say To The Other Snowman???

Do you smell carrots??

Mollense

  • Miembro de PLATA
  • *****
  • Mensajes: 1755
  • Nacionalidad: ar
    • Ver Perfil
    • http://solocodigo.com/
Re: Valores Null
« Respuesta #9 en: Miércoles 29 de Agosto de 2007, 21:47 »
0
Cita de: ""ArKaNtOs""
select sum(campo) as suma from mi_tabla where campo > 0;
Si el problema son los nulos (0) debería contemplar también los números negativos
Código: Text
  1. select sum(campo) as suma from mi_tabla where where campo<>0;
  2.  

que vendría siendo lo mismo que:
Código: Text
  1. select sum(campo) as suma from mi_tabla;
  2.  
:P
"Los que renuncian son más numerosos que los que fracasan" H.F.
"No se cómo sería la III Guerra Mundial, pero la cuarta sería con piedras" A.E.
"Quién no fía no es de fiar..."


...no te quedes mirando.

LeGatoRojo

  • Miembro HIPER activo
  • ****
  • Mensajes: 552
  • Nacionalidad: mx
    • Ver Perfil
    • LeGatoRojo
Re: Valores Null
« Respuesta #10 en: Miércoles 29 de Agosto de 2007, 21:47 »
0
pues es imposible hacer operaciones con null, lo unico que puedes hacer es convertirlo de esa manera, es lo mismo que tener cero, ahora que si lo que quieres es pasarlo a cero sin importar nada, tan solo es cuestion de hacer

Código: Text
  1.  
  2. UPDATE tabla SET val=0 WHERE val IS NULL
  3.  
  4.  

antes de hacer las operaciones.
Un día desperte y en lugar de dientes tenía colmillos, en lugar de manos, tenía garras; pero lo más impactante fue el color escarlata de mi pelaje.

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: Valores Null
« Respuesta #11 en: Miércoles 29 de Agosto de 2007, 22:33 »
0
Tambien Puedes usar IFNULL

<!--sql--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>SQL </td></tr><tr><td id='CODE'><!--sql1-->[color=blue;font-weight]select[/color] sum(ifnull(campo,0)) as suma from mi_tabla <!--sql2--></td></tr></table><div class='postcolor'><!--sql3-->


Saludos

Editado:

Correccion a la instruccion SQL
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================

gokufast

  • Miembro activo
  • **
  • Mensajes: 79
    • Ver Perfil
Re: Valores Null
« Respuesta #12 en: Jueves 30 de Agosto de 2007, 07:22 »
0
Muchas gracias por la ayuda a todos, con un poco de todos logre obtener el resultado que queria, que era sacar la resta entre la suma de depositos y la suma de retiros, osea  el saldo.

aca mi query:
SELECT campo1, campo2,
SUM(ifnull(retiros,0)),
SUM(ifnull(depositos,0)),
SUM(ifnull(depositos,0)-ifnull(retiros,0))
FROM tabla
GROUP BY campo2

Sobre esta consulta voy a trabajar, Asi que es solo el comienzo, porque tengo que usar fechas, pero para eso abrire un nuevo tema.

gracias nuevamente.  :D
What Did One Snowman Say To The Other Snowman???

Do you smell carrots??