Foros del Web » Programando para Internet » ASP Clásico »

Problemas Al Sumar Con Valores Null

Estas en el tema de Problemas Al Sumar Con Valores Null en el foro de ASP Clásico en Foros del Web. Hola tengo un problema y no se muy bien como solucionarlo, es el siguiente ----------------------------------- Tipo de error: Microsoft VBScript runtime (0x800A000D) Type mismatch: 'formatNumber' ...
  #1 (permalink)  
Antiguo 17/08/2007, 01:40
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
Problemas Al Sumar Con Valores Null

Hola tengo un problema y no se muy bien como solucionarlo, es el siguiente
-----------------------------------
Tipo de error:
Microsoft VBScript runtime (0x800A000D)
Type mismatch: 'formatNumber'
/Tienda_virtual_pe07/OTI07/Espanol/reviewOrder.asp, línea 1197
-----------------------------------
Todo esto lo coge de una base de datos en los cuales se han insertado valores o no
intProdPrice = rsReview("precio")
intQuant = rsReview("quantity")
intQuant2 = rsReview("quantity2")
intQuant3 = rsReview("quantity3")
intQuant4 = rsReview("quantity4")
intQuant5 = rsReview("quantity5")

intTotal =intTotal + (intQuant * intProdPrice)+ (intQuant2 * intProdPrice)+ (intQuant3 * intProdPrice)+ (intQuant4 * intProdPrice)+ (intQuant5 * intProdPrice) --AQUI LE DOY A LA VARIABLE PARA Q ME HAGA EL SUMATORIO DE LAS CANTIDADES * EL PRECIO
<%if intQuant >0 then%>

<input name="quant<%= intProdID %>" size="3" value=" <%=intQuant%>" onChange="HandleError(this)">
</font></div></td>

<td width="8%" align="left"><div align="center" class="Estilo18"><font face="ARIAL" size="2">&nbsp;<%= strRefer %> </font></div></td>

<td width="15%" align="right"><span class="Estilo18"><font face="Arial" size="2"><%= formatNumber(intProdPrice, 2) %> &euro;</font></span></td>

<td width="14%" align="right"><span class="Estilo18"><font face="Arial" size="2"><%= formatNumber((intQuant * intProdPrice), 2) %> &euro; </font></span></td>

<% end if%>
Y ASI CON LAS 5, PERO EN ALGUNAS CANTIDADES NO TIENE VALOR ES DECIR UN NULL
LO Q NECESITO QUE ME HAGA ES EL SUMAR TODO INTTOTAL
<td><div align="center" class="Estilo18"><strong><%= formatNumber(INTTOTAL,2) %> &euro; </strong></div></td>
NO SE COMO HACERLO SI ALGUIEN ME PUEDE AYUDAR GRACIAS
  #2 (permalink)  
Antiguo 17/08/2007, 07:23
Avatar de CésarBalaguer  
Fecha de Ingreso: octubre-2006
Ubicación: en mi casa
Mensajes: 181
Antigüedad: 17 años, 8 meses
Puntos: 0
Re: Problemas Al Sumar Con Valores Null

SI usas cualquier base de datos excepto Access puedes usar en tu query la instruccion COALESCE lo que hace es devolver un campo NULL al valor que tu decidas, por ejemplo:

SELECT COALESCE(cantidad,0) FROM tabla

lo que ocurrirà en caso la columna cantidad sea NULL es devolverte 0, de esa manera te evitas el problema que al sumar tengas valores indeseados.

Saludos y buena suerte
  #3 (permalink)  
Antiguo 17/08/2007, 08:09
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: Problemas Al Sumar Con Valores Null

es en access y el problema que reaulemte me esta dando es el <%= formatNumber(intTotal,2) %> &euro; q no se como hacer el subtotal
  #4 (permalink)  
Antiguo 17/08/2007, 09:11
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Re: Problemas Al Sumar Con Valores Null

Bueno, no se si exista en access la función IsNull que existe en SQL Server, funciona idéntico a como mencionaron que trabaja COALESCE.

Si no existiese, pues haz la validación desde ASP:

<%If IsNull(intTotal) Then Response.Write "0.00" Else Response.Write formatNumber(intTotal,2) End If%>
  #5 (permalink)  
Antiguo 20/08/2007, 02:54
Avatar de Taribo007  
Fecha de Ingreso: agosto-2007
Mensajes: 1.338
Antigüedad: 16 años, 10 meses
Puntos: 18
Re: Problemas Al Sumar Con Valores Null

En access, ademas de la funcion Isnull, esixte la funcion Nz, que devuleve en caso de null el valor que le indiques a la funcion como segundo parametro. En este ejemplo devolvera 0 en caso de null:

nz([Campo1],0)

Un saludo
  #6 (permalink)  
Antiguo 20/08/2007, 05:18
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: Problemas Al Sumar Con Valores Null

Perdonamer pero me he perdido, no se como ponerlo todo, si me podeis poenr el ejemplo con los datos para verlo mas claro os lo agradecira. lo de
<%If IsNull(intTotal) Then
Response.Write ("0.00")
Else
Response.Write formatNumber(intTotal,2) End If%> €
solo me sale 0.00 y no em hace ninguna suma de nada.
  #7 (permalink)  
Antiguo 20/08/2007, 15:30
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Re: Problemas Al Sumar Con Valores Null

Es mejor si lo manejas desde el SQL con el IsNull o el Nz que menciona Taribo007, algo como:

Select Campo, Campo2, Campo3, Nz(Sum(total), 0) as Total From tabla Group by ....



Si con el If siempre te sale 0.00 es por que inttotal es nulo, y como tal no se puede sumar con nada. Si pusieras algo más de tu código podríamos darnos una idea mejor de lo que en realidad necesitas.
  #8 (permalink)  
Antiguo 22/08/2007, 05:03
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: Problemas Al Sumar Con Valores Null

Hola he estado haciendo las pruebas con sql y me sale las cantidades a 0, pero el problema es el siguiente. Lo q quiero es;


REFERENCIA | Tamaño1 | Tamaño2 | Tamaño3 | Precio |
----------------------------------------------
Tornillos | 3 cm | 5 cm | 15 cm | 20 € |
00111a | 5 | | 10 | 15 € |
00111b | | 10 | | 5 € |
y asi con todas, lo que pasa q habra cantidades q no tengan ningun valor y hasta aqui bien. Ahora lo q quiero es que me sume lo de las cantidades

intTotal =intTotal + (tamaño1 * introdPrecio)+ (tamaño2 * introdPrecio)+ (tamaño3 * introdPrecio)+ (tamaño4 * introdPrecio) lo q pasa que si me lo suma y lo que quiero es sacar el total de todo.
Entonces en lo campos vacios tendria que insertar un 0? pq luego haria un informe con todo y los que estan a 0 tambien me saldria y eso no quiero hacerlo.

Un cordial saludo a tod@s
  #9 (permalink)  
Antiguo 22/08/2007, 09:33
Avatar de verinchi  
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires
Mensajes: 647
Antigüedad: 19 años, 8 meses
Puntos: 2
Re: Problemas Al Sumar Con Valores Null

A ver si entiendo... estas queriendo omitir los registros que tengan las cantidades a cero para que no los sume ni acumule?
De ser así, lo haces en el where de la consulta
where total is not null y con eso debería traer solo los que tienen un valor.

Si no es esto, explicate mejor porque no estoy entendiendo. :)
__________________
Why can't we not be sober?
www.partitorium.com.ar
  #10 (permalink)  
Antiguo 23/08/2007, 01:08
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: Problemas Al Sumar Con Valores Null

Efectivamente es eso lo q quiero hacer, que no me sume los valores null.

Os pongo mi consulta de SQL

sqlText = "select productos.productID, productos.catalogName, productos.referncia, productos.color01, productos.txttalla01, productos.txttalla01a, productos.txttalla01b, productos.color02, productos.txttalla02, productos.txttalla02a, productos.txttalla02b, productos.color03, productos.txttalla03, productos.txttalla03a, productos.txttalla03b, productos.color04, productos.txttalla04, productos.txttalla04a, productos.txttalla04b, " _
& "precio, quantity, quantity2, quantity3, quantity4, quantity5, quantity6, quantity7 from productos, " _
& "detalle_pedido where " _
& "productos.productID = detalle_pedido.ProductID "_
& "and detalle_pedido.orderID = " & intOrderID

intProdPrice = rsReview("precio")
intQuant = rsReview("quantity")
intQuant2 = rsReview("quantity2")
intQuant3 = rsReview("quantity3")
intQuant4 = rsReview("quantity4")
intQuant5 = rsReview("quantity5")
intQuant6 = rsReview("quantity6")
intQuant7 = rsReview("quantity7")

intTotal =intTotal + (intQuant * intProdPrice)+ (intQuant2 * intProdPrice)+ (intQuant3 * intProdPrice)+ (intQuant4 * intProdPrice)+ (intQuant5 * intProdPrice)+ (intQuant6 * intProdPrice) + (intQuant7 * intProdPrice)

LO Q NECESITO QUE ME HAGA ES EL SUMAR TODO INTTOTAL
<td><div align="center" class="Estilo18"><strong><%= formatNumber(INTTOTAL,2) %> &euro; </strong></div></td>
NO SE COMO HACERLO SI ALGUIEN ME PUEDE AYUDAR GRACIAS
  #11 (permalink)  
Antiguo 23/08/2007, 08:12
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Re: Problemas Al Sumar Con Valores Null

Cita:
Iniciado por Essftg Ver Mensaje
Hola he estado haciendo las pruebas con sql y me sale las cantidades a 0, pero el problema es el siguiente. Lo q quiero es;


REFERENCIA | Tamaño1 | Tamaño2 | Tamaño3 | Precio |
----------------------------------------------
Tornillos | 3 cm | 5 cm | 15 cm | 20 € |
00111a | 5 | | 10 | 15 € |
00111b | | 10 | | 5 € |
y asi con todas, lo que pasa q habra cantidades q no tengan ningun valor y hasta aqui bien. Ahora lo q quiero es que me sume lo de las cantidades

intTotal =intTotal + (tamaño1 * introdPrecio)+ (tamaño2 * introdPrecio)+ (tamaño3 * introdPrecio)+ (tamaño4 * introdPrecio) lo q pasa que si me lo suma y lo que quiero es sacar el total de todo.
Entonces en lo campos vacios tendria que insertar un 0? pq luego haria un informe con todo y los que estan a 0 tambien me saldria y eso no quiero hacerlo.

Un cordial saludo a tod@s
No se que precio sea el que tienes en esa tabla, a juicio mio no debería tener la estructura que indicas. Supongo que el precio depende del tamaño de la pieza, ¿o no?. Otra, ¿por qué multiplicas el valor que tienes en tamaño por el precio? ¿no debería ser las existencias por el precio?, otra más, No debes colocar a los nombres de campos caracteres especiales, como la eñe, por ejemplo.

A lo mejor no termino de entender, jejeje

Pero en fin, para lo que quieres, independientemente de que tomes o no en cuenta mis observaciones, se puede hacer con un simple select:

select SUM(IsNull(tamanio1,0)*IsNull(precio,0)) + SUM(IsNull(tamanio2,0)*IsNull(precio,0)) + SUM(IsNull(tamanio3,0)*IsNull(precio,0)) as Total
from tuTabla
  #12 (permalink)  
Antiguo 23/08/2007, 08:54
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: Problemas Al Sumar Con Valores Null

Cita:
Iniciado por Myakire Ver Mensaje

select SUM(IsNull(tamanio1,0)*IsNull(precio,0)) + SUM(IsNull(tamanio2,0)*IsNull(precio,0)) + SUM(IsNull(tamanio3,0)*IsNull(precio,0)) as Total
from tuTabla
Entonces hago una nueva consulta con el select o lo inserto en el intTotal q aqui es donde me guarda todas las sumas?

intTotal =intTotal + (isnull(intQuant,0) * isnull(intProdPrice,0))+ (isnull(intQuant2,0) * isnull(intProdPrice,0))+(isnull(intQuant3,0) * isnull(intProdPrice,0))+(isnull(intQuant4,0) * isnull(intProdPrice,0))

Mi select es asi:
sqlText = "select productos.productID, productos.catalogName, productos.referncia, productos.color01, productos.txttalla01, productos.txttalla01a, productos.txttalla01b, productos.color02, productos.txttalla02, productos.txttalla02a, productos.txttalla02b, productos.color03, productos.txttalla03, productos.txttalla03a, productos.txttalla03b, productos.color04, productos.txttalla04, productos.txttalla04a, productos.txttalla04b, " _
& "precio, quantity, quantity2, quantity3, quantity4, from productos, " _
& "detalle_pedido where " _
& "productos.productID = detalle_pedido.ProductID "_
& "and detalle_pedido.orderID = " & intOrderID
o tendria q modificarla en esta?

gracias a los que me puedan ayudar.

Última edición por Essftg; 23/08/2007 a las 09:58
  #13 (permalink)  
Antiguo 23/08/2007, 12:00
Avatar de verinchi  
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires
Mensajes: 647
Antigüedad: 19 años, 8 meses
Puntos: 2
Re: Problemas Al Sumar Con Valores Null

Hola
En realidad, la suma que te dice Myakire es la que te daría el total general, pero los datos para mostrar en tu informe, tenés que traerlos en la consulta como la tenías.
El problema que veo en tu informe es que: El total me imagino que es el total de todos los productos listados en el informe, que cumplen con la condición que especificas en el where (Un pedido por lo que parece).
El punto es que, si no querés mostrar los productos que tienen cantidad cero (No veo la columna cantidad tampoco), la consulta del total general no sumaría los que no tienen nada en cantidad, pero tu select si traería los datos que tengan null en la columna cantidad.
De todas formas, si en un pedido, te solicitan un producto que no tenés en stock, con colocar cero en cantidad estarías informando que el stock de ese producto es cero, cosa que veo bastante conveniente.
De todas formas, si lo que querés es listar todos los productos, con tu filtro, que contengan algo en la columna cantidad, te bastaría con colocar un filtro mas en tu where que quite de la lista a los que tienen null en cantidad. (Where cantidad is not null).
Además, no te olvides que en el ejemplo que te dio Myakire no están los datos filtrados según tu consulta original, es solo para que te orientes acerca de cómo operar los datos para obtener en una sola consulta el total que estás buscando.

Bueno, entre null y not null espero que esto no sea un trabalenguas y se entienda.

Suerte!
__________________
Why can't we not be sober?
www.partitorium.com.ar
  #14 (permalink)  
Antiguo 24/08/2007, 01:17
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: Problemas Al Sumar Con Valores Null

os pongo el codigo para que se pueda entender un poco mejor
Consulta
sqlText = "select productos.productID, productos.catalogName, productos.referncia, productos.color01, productos.txttalla01, productos.txttalla01a, productos.txttalla01b, productos.color02, productos.txttalla02, productos.txttalla02a, productos.txttalla02b, productos.color03, productos.txttalla03, productos.txttalla03a, productos.txttalla03b, productos.color04, productos.txttalla04, productos.txttalla04a, productos.txttalla04b, " _
& "precio, quantity, quantity2, quantity3, quantity4, from productos, " _
& "detalle_pedido where " _
& "productos.productID = detalle_pedido.ProductID "_
& "and detalle_pedido.orderID = " & intOrderID
<%
set rsReview = Conn.Execute(sqlText)
while not rsReview.EOF
intProdID = rsReview("productID")
strRefer = rsReview("REFERNCIA")
strProdName = rsReview("catalogName")
strTalla1 = rsReview("txttalla01")
strTalla1a = rsReview("txttalla01a")
strTalla1b = rsReview("txttalla01b")
strTalla2 = rsReview("txttalla02")
strTalla2a = rsReview("txttalla02a")
strTalla2b = rsReview("txttalla02b")
strTalla3 = rsReview("txttalla03")
strTalla3a = rsReview("txttalla03a")
strTalla3b = rsReview("txttalla03b")
strTalla4 = rsReview("txttalla04")
strTalla4a = rsReview("txttalla04a")
strTalla4b = rsReview("txttalla04b")
strcolor1 = rsReview("color01")
strcolor2 = rsReview("color02")
strcolor3 = rsReview("color03")
strcolor4 = rsReview("color04")
intProdPrice = rsReview("precio")
intQuant = rsReview("quantity")
intQuant2 = rsReview("quantity2")
intQuant3 = rsReview("quantity3")
intQuant4 = rsReview("quantity4")
intTotal =intTotal + (intQuant * intProdPrice)+ (intQuant2 * intProdPrice)+ (intQuant3 * intProdPrice)+ (intQuant4 * intProdPrice)

<%if intQuant >0 then%>
<tr>
<td width="7%" valign="center" align="left"><div align="center" class="Estilo18"><font face="Arial" size="2">
<input name="quant<%= intProdID %>" size="3" value=" <%=intQuant%>" onChange="HandleError(this)">
</font></div></td>
<td width="8%" align="left"><div align="center" class="Estilo18"><font face="ARIAL" size="2">&nbsp;<%= strRefer %> </font></div></td>
<td width="23%" align="left"><div align="center" class="Estilo18"><font face="ARIAL" size="2">&nbsp;<%= strProdName %></font></div></td>
<td width="15%" align="left"><div align="center" class="Estilo18"><font face="ARIAL" size="2">&nbsp;<%= strTalla1 %></font></div></td>
<td width="18%" align="left"><div align="center" class="Estilo18"><font face="ARIAL" size="2">&nbsp;<%= strcolor1 %></font></div></td>
<td width="15%" align="right"><span class="Estilo18"><font face="Arial" size="2"><%= formatNumber(intProdPrice, 2) %> &euro;</font></span></td>
<td width="14%" align="right"><span class="Estilo18"><font face="Arial" size="2"><%= formatNumber((intQuant * intProdPrice), 2) %> &euro; </font></span></td>
</tr>
<% end if%>
y asi con las 4 intQuant4, es para q me muestre los mayores de cero.
<%
rsReview.MoveNext
wend

rsReview.Close
set rsReview = Nothing
%>
Y ASI CON LAS 5, PERO EN ALGUNAS CANTIDADES NO TIENE VALOR ES DECIR UN NULL
LO Q NECESITO QUE ME HAGA ES EL SUMAR TODO INTTOTAL
<td><div align="center" class="Estilo18"><strong><%= formatNumber(INTTOTAL,2) %> &euro; </strong></div></td>
Lo q hago q es si una cantidad no tiene valor no me lo muestre y no me lo sume pero lo q no me sale es el subtotal (intTotal) q aqui me hace la suma de todo. Si en vez de poner valor null le pongo 0 funciona perfectamente pero luego es un jale con la consulta pq me salen las cantidades a 0
GRACIAS A TODOS
  #15 (permalink)  
Antiguo 24/08/2007, 07:19
Avatar de verinchi  
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires
Mensajes: 647
Antigüedad: 19 años, 8 meses
Puntos: 2
Re: Problemas Al Sumar Con Valores Null

Hola

Yo haría la consulta de esta manera:
Código:
sqlText = "select productos.productID, productos.catalogName, productos.referncia, productos.color01, productos.txttalla01, productos.txttalla01a, productos.txttalla01b, productos.color02, productos.txttalla02, productos.txttalla02a, productos.txttalla02b, productos.color03, productos.txttalla03, productos.txttalla03a, productos.txttalla03b, productos.color04, productos.txttalla04, productos.txttalla04a, productos.txttalla04b, precio, quantity, quantity2, quantity3, quantity4, from productos, detalle_pedido WHERE productos.productID = detalle_pedido.ProductID and detalle_pedido.orderID = " & intOrderID &" and quantity is not null and quantity2 is not null and quantity3 is not null and quantity4 is not null 
Que es lo que te decía en el mensaje anterior, de filtrar también por cantidades a null, dado que no se para qué querés traer de todos modos los datos con null, si no los vas a mostrar ni promediar.
Con esto, tu verificación por quantity>0 estaría de mas, ya que directamente si alguna de las cantidades es null, no te trae el registro.

Si querés conservar la estructura que tenés, el COALESCE tiene que funcionarte bien, ya que los null los trae como ceros, y es como si tubieras un cero en la tabla, tu verificación "tiene" que funcionar.

Si además del subtotal necesitás sacar un total general, te basta con un acumulador en el bucle que vaya acumulando (valga la redundancia) los subtotales en cada vuelta.

Detalles: No hace falta cargar todos los valores del recordset en variables para mostrarlos, estás ocupando mas recursos de los necesarios para mostrar el nombre del producto y algunos detalles. Para operar, tampoco es absolutamente necesario, aunque tal vez puede ser cómodo para declarar tus operaciones.

Por lo que se entiende que necesitás, la solución está entre los post anteriores incluso, solo hace falta darle un poco de vueltas a la idea. Si aún no encontrás la forma, tratá de describir detalladamente tu objetivo para que podamos comprenderte mejor.
Entiendo que debés estar saturado de tu propia idea, pero de este lado, por lo menos a mi, no me está llegando del todo bien :)

Adelante y suerte!
__________________
Why can't we not be sober?
www.partitorium.com.ar
  #16 (permalink)  
Antiguo 27/08/2007, 04:08
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: Problemas Al Sumar Con Valores Null

gracias a todos por la ayuda pero si pongo en access las cantidades a cero me sale perfectamente y me lo hace todo bien lo que no quiero es que al hacer una consulta me salgan los valores a cero, es decir que me muestre solo las cantidades > 0.
Por mas vueltas que le doy ya me he quedado en stand by pq no se como hacerlo, no puedo pasarlo a SQL pq tendria que modificar mogollon de cosas y la aplicacion sale en tres dias, esto es un infierno jajaja.
  #17 (permalink)  
Antiguo 27/08/2007, 07:45
Avatar de verinchi  
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires
Mensajes: 647
Antigüedad: 19 años, 8 meses
Puntos: 2
Re: Problemas Al Sumar Con Valores Null

La respuesta que di arriba funciona en access, y en lugar de COALESCE, deberías usar esta función que te indicaban también mas arriba.

Cita:
Iniciado por Taribo007 Ver Mensaje
En access, ademas de la funcion Isnull, esixte la funcion Nz, que devuleve en caso de null el valor que le indiques a la funcion como segundo parametro. En este ejemplo devolvera 0 en caso de null:

nz([Campo1],0)
Intentalo con paciencia que tiene que salir.
__________________
Why can't we not be sober?
www.partitorium.com.ar
  #18 (permalink)  
Antiguo 27/08/2007, 08:17
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: Problemas Al Sumar Con Valores Null

Registro 1
-----------
campo1: 3
campo2: 3
campo4: null

registro 2
-----------
campo1: 5
campo2: null
campo3: 10

registro 3
-----------
campo1: 6
campo2: 3
campo3: null

registro 4
----------
campo1: 7
campo2: 4
campo3: 5

El problema es q no se donde poner eso, en el select de sql? a ver si con esto es un poco mas sencillo de enterder?
Pongamos el caso que yo quiero hacer una suma de los campos.
  #19 (permalink)  
Antiguo 27/08/2007, 09:59
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Re: Problemas Al Sumar Con Valores Null

Cita:
Iniciado por Essftg Ver Mensaje
Registro 1
-----------
campo1: 3
campo2: 3
campo4: null

registro 2
-----------
campo1: 5
campo2: null
campo3: 10

registro 3
-----------
campo1: 6
campo2: 3
campo3: null

registro 4
----------
campo1: 7
campo2: 4
campo3: 5
Ok, vamos por partes, tienes lo que ya pusiste, ahora ¿qué es lo que necesitas que salga como suma para cada registro?
  #20 (permalink)  
Antiguo 28/08/2007, 03:53
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: Problemas Al Sumar Con Valores Null

ahora necesito q me haga la suma
Registro 1
-----------
campo1: 3
campo2: 3
campo4: null
Total: campo1+campo2+ campo3 --> me lo tiene q hacer con el registro1, registro2,registro3 y registro4

SubTotal: registro1+registro2+registro3+registro4, me tiene que hacer la suma de todo en general
  #21 (permalink)  
Antiguo 28/08/2007, 07:30
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Re: Problemas Al Sumar Con Valores Null

Bueno, entonces es algo tan simple como:

SELECT IsNull(Campo1,0) as Campo1, IsNull(campo2,0) as Campo2, IsNull(campo3,0) as Campo3, IsNull(Campo1,0)+IsNull(campo2,0)+IsNull(campo3,0) as Suma FROM Tabla

Y en tu código, cuando pintas los registros, debes ir acumulando el campo "SUMA" y esa suma es tu total que necesitas.
  #22 (permalink)  
Antiguo 29/08/2007, 01:23
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: Problemas Al Sumar Con Valores Null

lo he probrado en access en una consulta y nada, si me podeis ayudar poniendo el codigo de como seria os lo agradeceria enormemente, estoy que ya no se como hacerlo.
Gracias a todos.
  #23 (permalink)  
Antiguo 29/08/2007, 07:24
Avatar de verinchi  
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires
Mensajes: 647
Antigüedad: 19 años, 8 meses
Puntos: 2
Re: Problemas Al Sumar Con Valores Null

Cita:
Iniciado por Myakire Ver Mensaje
Bueno, entonces es algo tan simple como:

SELECT IsNull(Campo1,0) as Campo1, IsNull(campo2,0) as Campo2, IsNull(campo3,0) as Campo3, IsNull(Campo1,0)+IsNull(campo2,0)+IsNull(campo3,0) as Suma FROM Tabla

Y en tu código, cuando pintas los registros, debes ir acumulando el campo "SUMA" y esa suma es tu total que necesitas.
Esta respuesta de Myakire no funcionó? Debería...
__________________
Why can't we not be sober?
www.partitorium.com.ar
  #24 (permalink)  
Antiguo 29/08/2007, 08:39
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: Problemas Al Sumar Con Valores Null

Muchas gracias pero estoy montandolo en asp y SQL, en SQL quiero hacer lo de la suma y q si no tiene valor me lo sume, lo del famoso
COALESCE (campo1,[0.00])
pero que tendria q hacer en sql una consulta?
  #25 (permalink)  
Antiguo 29/08/2007, 08:47
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Re: Problemas Al Sumar Con Valores Null

Código:
SELECT ISNULL(campo, 0) FROM tabla
http://msdn2.microsoft.com/en-us/library/ms184325.aspx

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
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 16:33.