none
Error en consulta update

    Pregunta

  • Hola a todos:

    Precisaría realizar la consulta indicada, en la que analizo si una columna tiene saldo negativo, le cambio el signo, es decir multiplico por -1, La misma me está dando errores y ya he probado de diversas formas.

    Necesito que si el Campo: SaldoUnificado es menor que 0, me lo ponga con signo positivo.

    cmd.CommandText = "Update ImportacionDatos Set SaldoUnificado = CASE WHEN < 0 THEN (SaldoUnificado *-1) END WHERE SUBSTRING(Cód_GC, 1, 1) = 1 "

    Muchas gracias a todos.

    Gemma


    lunes, 22 de mayo de 2017 9:06

Respuestas

  • Podrias hacer algo tan simple como tomar el valor absoluto:

    cmd.CommandText = "Update ImportacionDatos Set SaldoUnificado = ABS(SaldoUnificado) WHERE SUBSTRING(Cód_GC, 1, 1) = 1"

    No obstante, si quieres usar el CASE, hay que cambiar un poco la sintaxis:

    cmd.CommandText = "Update ImportacionDatos Set SaldoUnificado = CASE WHEN SaldoUnificado<0 THEN -SaldoUnificado ELSE SaldoUnificado END WHERE SUBSTRING(Cód_GC, 1, 1) = 1"

    lunes, 22 de mayo de 2017 9:21

Todas las respuestas

  • Podrias hacer algo tan simple como tomar el valor absoluto:

    cmd.CommandText = "Update ImportacionDatos Set SaldoUnificado = ABS(SaldoUnificado) WHERE SUBSTRING(Cód_GC, 1, 1) = 1"

    No obstante, si quieres usar el CASE, hay que cambiar un poco la sintaxis:

    cmd.CommandText = "Update ImportacionDatos Set SaldoUnificado = CASE WHEN SaldoUnificado<0 THEN -SaldoUnificado ELSE SaldoUnificado END WHERE SUBSTRING(Cód_GC, 1, 1) = 1"

    lunes, 22 de mayo de 2017 9:21
  • Hola Alberto:

    Gracias como siempre por responder.

    Ha quedado perfectamente explicado. Te lo agradezco.

    Muchas gracias.

    Un abrazo.

    Gemma

    lunes, 22 de mayo de 2017 9:28