home Foro de soporte Servicio Hosting MySQL
 
Como restar enteros negativos en mysql
Haz clic para ver el perfil del usuario
Machacateclados
Machacateclados
·
#1 · ·

Hola a todos:

Tengo un problema bastante raro, haber si me podeis dar una explicación o una forma de hacerlo para que salga bien.. Me intentaré explicar lo mejor posible.

Tengo una tabla con varios campos enteros que deseo sumar en un total. El problema reside al intentar en esa gran suma hacer una resta, ya que la resta da cero cuando debería dar negativo. Me explico:

Esta es mi tabla: Campo1(entero), Campo2(entero), etc. Y esta la consulta:

select campo1,campo2, (campo1*2)+(campo2*-2) as total
Pongo un ejemplo: Campo1(488)+Campo2(-41)= Resultado que da es 402 cuando debería dar 447!!!!!!!
No se que valor da entonces campo2*2 ya que cero no puede ser y ya que campo1*2 si da 488!!!
Lo unico viable en esta operación es que esté dos veces restando 41 y ademas restando 2 cada vez, es decir, resta 41 y -2 y vuelve a restar -41 y -2 increiblemente.

si por el contrario hago esta consulta: select (campo2*-2) as total ---> el resultado es cero

y sin embargo si resto por ejemplo asi: select (campo2-2) as total --> el resultado si es el que debería salir

Si alguien me pudiera ayudar.......... gracias de antemano!

Haz clic para ver el perfil del usuario
@man / @woman
@man / @woman
· ·
#2 ·
Escrito originalmente por JoaoTeamm

No se que valor da entonces campo2*2 ya que cero no puede ser y ya que campo1*2 si da 488!!!

Saca solo campo2 multiplicado por menos dos y mira a ver...

select campo2, (campo2*-2) as total

Además, no me gustan tus números de ejemplo... si campo2 es un entero, al multiplicarle por 2, ya sea positivo o negativo, te tiene que dar un número par y a ti te da -41.

Ergo, mira bien que valores tienes en campo1, campo2, en campo1*2 y e campo2*-2

Haz clic para ver el perfil del usuario
Machacateclados
Machacateclados
·
#3 ·

Gracias por contestarme

Pues si para mi asombro da eso un numero impar

si hago lo que tu dices, es decir, (campo2*-2) as total el resultado es cero!!!!!!! que es mas increible aun

Entonces según lo puesto deberia dar un número negativo verdad? es decir si campo 2 vale 2 y lo multiplico por -2 debería dar -4 verdad? que no hay que meter ninguna función ni nada por el estilo

Haz clic para ver el perfil del usuario
@man / @woman
@man / @woman
· ·
#4 ·

Y si pruebas -2*campo2? quizás se esta haciendo un lio con el *-

Haz clic para ver el perfil del usuario
Machacateclados
Machacateclados
·
#5 ·

que va también lo probé y da cero si la saco sola y el resultado de antes que encima es impar si lo hago como en el primer ejemplo

Haz clic para ver el perfil del usuario
Machacateclados
Machacateclados
·
#6 ·

ya está solucionado al final era un error mio de sintaxis

gracias por tus contestaciones

ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES,
te recomendamos abrir un nuevo tema en lugar de responder al actual
Foro de soporte · Servicio Hosting · MySQL
Opciones:
Subscríbete a este tema
Date de baja de este tema
Ir al subforo:  
TU NO PUEDES Escribir nuevos temas en este foro
TU NO PUEDES Responder a los temas en este foro
TU NO PUEDES Editar tus propios mensajes en este foro
TU NO PUEDES Borrar tus propios mensajes en este foro
Ahora son las 09:54 UTC+02:00 DST
Temas similares
No se han encontrado temas similares