Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-02-2005
tiagor64 tiagor64 is offline
Miembro
 
Registrado: ene 2005
Posts: 48
Poder: 0
tiagor64 Va por buen camino
sumar campos string

Hola foro:

Tengo un problema al sumar campos de una tabla, ya que tengo todos los campos declarados como string pero ahora resulta que tengo q realizar una actualizacion de datos de un monton de campos con un update, pero resulta que al intentar sumar campos me los encadena.
Estoy usando Delphi7 con acces 2000.
Supongo q el problema estara resuelto en algun foro pq parece un error comun, pero juro q lo he buscado y no lo he encontrado.
Agradeceria cualquier ayuda porque si he de cambiar los tipos de los campos he de rehacer medio programa.
Muchas gracias por vuestra ayuda.
Responder Con Cita
  #2  
Antiguo 16-02-2005
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Los strings no aceptan operaciones aritméticas, si lo que tienes son campos strings con valores numéricos, te recomiendo replantear el diseño de tu base de datos, si no puedes hacer esto, lo que tienes que hacer es un CAST de tu campo al tipo de dato deseado.
Código SQL [-]
SELECT VAL(CAMPO1)+VAL(CAMPO2) FROM TABLA

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #3  
Antiguo 16-02-2005
tiagor64 tiagor64 is offline
Miembro
 
Registrado: ene 2005
Posts: 48
Poder: 0
tiagor64 Va por buen camino
gracias, casi me sirve, pero poniendo val(campo1) me coge el valor entero del numero, pero me deja los decimales.

No existira ninguna opcion para que coja los decimales??
Responder Con Cita
  #4  
Antiguo 16-02-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Código SQL [-]
Select Sum(Cast(numero as float)) as total
 from Prueba

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #5  
Antiguo 16-02-2005
tiagor64 tiagor64 is offline
Miembro
 
Registrado: ene 2005
Posts: 48
Poder: 0
tiagor64 Va por buen camino
no se q pasa, pero no me funciona, me dice q falta operador, pongo el codigo aqui, a ver si ves algo:

Código:
form2.bonus.sql.text := 'update segchasis set  importebruto =cast ( val(bonusfiat) as float) + cast ( val(bonusmotriz) as float)';
	  form2.bonus.ExecSQL;
de todas formas muchas gracias de nuevo
Responder Con Cita
  #6  
Antiguo 16-02-2005
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Yo de por si quitaría los "VAL"
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 09:28:22.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi