Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MS SQL Server
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-10-2007
AFilth AFilth is offline
Miembro
 
Registrado: ago 2005
Posts: 119
Poder: 19
AFilth Va por buen camino
Exclamation Como hacer este Update de una columna...

Hola a todos,

Tengo una tabla con una columna de Precio que es Float, quiero hacer un update de esa columna en la tabla para poner nuevos precios:

update articulos set precio = (precio * 0.85)

El problema es que me salen muchísimos decimales y sólo quiero dos.

Lo he intentado con Round y con format pero no lo consigo...

Cual es la forma correcta?

Un saludo.
Responder Con Cita
  #2  
Antiguo 20-10-2007
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
ya que colocas la pregunta en este apartado supongo que usas SqlServer,

Partiendo de ese supuesto la consulta quedaría así:

Código SQL [-]
   update articulos 
        set precio = Convert(Numeric(18,2),precio * 0.85)

convert devuelve un numérico de 16 dígitos con 2 decimales.

Suerte
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #3  
Antiguo 20-10-2007
AFilth AFilth is offline
Miembro
 
Registrado: ago 2005
Posts: 119
Poder: 19
AFilth Va por buen camino
Muchas gracias por la respuesta`pero me sigue pasando lo mismo...

Por ejemplo algo de 74.0 me lo transforma en 64.599999999999994.

Alguna idea más?

PD: Utilizo SLQ Server 2000
Responder Con Cita
  #4  
Antiguo 20-10-2007
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
que raro, no debería hacerte eso,

Ok, entonces redefine el campo en la tabla, definelo como numérico 18,2

eso debe solucionarlo. Suerte
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #5  
Antiguo 20-10-2007
AFilth AFilth is offline
Miembro
 
Registrado: ago 2005
Posts: 119
Poder: 19
AFilth Va por buen camino
Cambiando a numeric perfecto, lo otro no sé poruq elo estará haciendo...

Un saludo.
Responder Con Cita
  #6  
Antiguo 21-10-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Los campos Float funcionan así, de hecho no se recomienda para almacenar cantidades monetarias. Posiblemente estén por compatibilidad, porque la verdad, no sé para qué puede servir un número que no es el que hemos guardado .

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #7  
Antiguo 24-10-2007
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
¿ porque definir un campo "Decimal(18,2)" para almacenar cantidades monetarias cuando lo puedes definir como tipo "money" ?
__________________

Responder Con Cita
  #8  
Antiguo 27-10-2007
Avatar de nuk3zito
nuk3zito nuk3zito is offline
Miembro
 
Registrado: ago 2003
Ubicación: "Z" Land
Posts: 244
Poder: 21
nuk3zito Va por buen camino
Cita:
Empezado por poliburro Ver Mensaje
ya que colocas la pregunta en este apartado supongo que usas SqlServer,
Jajaja, no pude evitar la risa, partiendo de experiencias pasadas en donde alguien que quiere algo para Access se mete a este foro
__________________
Tiempo y ocasión acontecen a todos!
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como hacer una columna Acumulada en SQL egarc SQL 14 21-09-2007 23:26:01
Como hacer esto a una columna de un cxgrid??? AFilth Varios 0 22-11-2006 12:08:19
¿Se puede hacer un update en delphi?¿Como? nachobic Conexión con bases de datos 1 30-04-2006 17:38:37
como hacer este juego? coolfrog Varios 2 19-12-2005 10:02:09


La franja horaria es GMT +2. Ahora son las 01:19:55.


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