none
Como Restar dos campo en sql server RRS feed

  • Pregunta

  • Hola,

    tengo 2 campo Monto_incial, Monto_Final , lo que quiero hacer es restar esa dos columan y que me la coloque en otra Columna

    ejemplo

    Monto_inicial  Monto_Final  Diferencia

    2                    2                 0

    4                    2                 2

     

    espero que me puedan ayudar

    viernes, 25 de marzo de 2011 18:39

Respuestas

Todas las respuestas

  • Hola.

    Así:

    select Monto_inicial, Monto_Final, Monto_inicial - Monto_Final as Diferencia
    from Tabla
    


    Alberto López Grande
    SQL Server MVP
    Visita mi blog en http://qwalgrande.blogspot.es/

    viernes, 25 de marzo de 2011 18:59
    Moderador
  •  Hola.

     No comentas, que definición o que tipo de datos, son las columnas que quieres restar.

     Añadiendo a la sugerencia de Alberto, si tus datos son de tipo string, tenemos la Función CONVERT. La utilidad de esta función es la siguiente: imaginemos que tenemos un campo de tipo string, el cual queremos utilizar para realizar operaciones aritméticas. A priori, al tratarse de un string, no podremos sumar/restar, etc. Pero con el uso de esta función podemos convertir, si es viable, una cadena a un entero. La sintaxis de la función es la siguiente: convert(A,B), siendo B el dato que queremos convertir en el tipo de dato A.

     Por ejemplo, si tenemos el dato string CampoString='25' haríamos la siguiente conversión para obtener un entero convert(int,CampoString).

     Todos los tipos de datos no son convertibles, por lo que si intentamos una conversión del tipo convert(int, 'HOLA') SQL Server mostrará un error de conversión de tipos, concretamente mostrará el siguiente error: Conversion failed when converting the varchar value 'HOLA' to data type int.

     Mas información en (http://msdn.microsoft.com/es-es/library/ms187928.aspx)


     Norman M. Pardell 

    ||Microsoft Certified IT Professional|| Database Administrator. Database Developer. SQL Server 2008

    sábado, 26 de marzo de 2011 23:06