Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-12-2007
Avatar de Gabo
[Gabo] Gabo is offline
Miembro Premium
 
Registrado: mar 2007
Ubicación: Murcia (España)
Posts: 684
Poder: 20
Gabo Va por buen camino
Interesante la SQL... (EDITO: Aclaro que hasta hace poco no se veía bien.)

Creo que eso no es posible. Al menos en Interbase sólo se puede hacer Sum a valores numéricos, e imagino que en todos los SGDB será así.

Lo que podrías hacer es recuperar los datos con una query, recorrerla, hacer la conversión y sumar.

O también, redefinir los campos de la BD, si es que puedes, por otros mas apropiados.
__________________
Saludos,
Gabo

A menos que se indique lo contrario, el código estará hecho en C++Builder.
Responder Con Cita
  #2  
Antiguo 12-12-2007
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 26
BlueSteel Va por buen camino
Hola

prueba con esto.. no lo he provado.. lo hice asi de memoria

Código SQL [-]
Select Convert(Float, IMPTOTAL) As 'Importe Total'
From Tabla

Tambien puede ser asi
Código SQL [-]
SELECT CAST(IMPTOTAL AS money)
From Tabla
__________________
BlueSteel

Última edición por BlueSteel fecha: 12-12-2007 a las 18:48:19. Razón: texto
Responder Con Cita
  #3  
Antiguo 12-12-2007
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 26
BlueSteel Va por buen camino
Hola...

mira.. probe esto en SQL Server 2005 y me funciono ok

Código SQL [-]
Select Convert(Float, Per_NCta)+1
From Personal
Where Per_Nro=1086

donde Per_NCta es de tipo Varchar de 15

Suerte...[/color][/size]
__________________
BlueSteel
Responder Con Cita
  #4  
Antiguo 12-12-2007
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 26
BlueSteel Va por buen camino
Hola...

hehe... segui realizando algunas pruebas... ahora con decimales y me arrojo esto

Código SQL [-]
Declare @var as Varchar(20)
Set @var='123456.652'
Print Convert(Float, @var)
Print Convert(Decimal(10,3), @var)
Print Cast(@var as Decimal(10,2))

y los resultados fueron los siguientes

123457
123456.652
123456.652

por lo cual,, convertir una variable de tipo Varchar a Float, no obtendrás los decimales, deberas convertirlos a Decimal...

suerte...
__________________
BlueSteel

Última edición por BlueSteel fecha: 13-12-2007 a las 15:19:59.
Responder Con Cita
  #5  
Antiguo 13-12-2007
egarc egarc is offline
Miembro
 
Registrado: jul 2006
Posts: 60
Poder: 21
egarc Va por buen camino
esta prfecto lo que me han dicho, pero......

el campo a parte de ser varchar, tiene como separador de miles una coma (,) y existen campo (' 1,490.00 ') con espacios delante y detras.....

Me da el error cuando encuentra un registro con una coma..

muchas gracias por sus respuestas
Responder Con Cita
  #6  
Antiguo 13-12-2007
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 26
BlueSteel Va por buen camino
Hola

lo que tendrias que hacer entonces es : o cambiar tu separador de miles a coma, o eliminar la coma del string

para eliminar la coma del string.. deberas utilizar la sgte funcion en D7

AnsiReplaceStr

Ejem.

Código Delphi [-]
 
Val := '125,432,134.00'
Val2 := AnsiReplaceStr(Val,',','');
Val2 := '125432134.00'

lo que hice fue reemplazar (eliminar) la coma "," por "" (nada)

espero que te sirva
__________________
BlueSteel
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
convertir edit de string a float Kamael OOP 1 11-08-2007 03:33:23
convertir texto en grafico donepia Varios 1 20-10-2006 11:37:59
Cast: Convertir Float a cadena "99+999" Jose_Pérez SQL 1 15-11-2005 14:51:38
convertir un texto a mayusculas uper Varios 7 07-03-2005 16:45:23
Como Convertir un dato Integer ó Float a String en FireBird???? AGAG4 Firebird e Interbase 8 04-12-2004 02:59:47


La franja horaria es GMT +2. Ahora son las 00:29:20.


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