Problema con función MAX()

18/11/2005 - 06:30 por Rodrigo | Informe spam
Hola. La idea que estoy utilizando es un correlativo, por el cual, voy
guardando en un campo los numeros, "1,2,3... etc", entonces, con la función
MAX cuento el número más alto y aumento en 1 para seguir con el correlativo.
El problema es que cuando llego al número 10 no me aumenta en 1, mostrándome
siempre el 10, siendo que debería aparecer el 11. La sentencia que estoy
utilizando es la siguiente:

SELECT ISNULL(MAX(numero), 0)+1 AS Siguiente
FROM Correlativo

Espero haber sido claro y que me puedan ayudar. Muchas gracias.

Rodrigo

Preguntas similare

Leer las respuestas

#1 Carlos Sacristán
18/11/2005 - 08:53 | Informe spam
No tiene sentido, la sentencia está bien y desde luego MAX no hace cosas
raras. Estás seguro que 'numero' es numérico y que los datos son correctos?


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Rodrigo" escribió en el mensaje
news:
Hola. La idea que estoy utilizando es un correlativo, por el cual, voy
guardando en un campo los numeros, "1,2,3... etc", entonces, con la


función
MAX cuento el número más alto y aumento en 1 para seguir con el


correlativo.
El problema es que cuando llego al número 10 no me aumenta en 1,


mostrándome
siempre el 10, siendo que debería aparecer el 11. La sentencia que estoy
utilizando es la siguiente:

SELECT ISNULL(MAX(numero), 0)+1 AS Siguiente
FROM Correlativo

Espero haber sido claro y que me puedan ayudar. Muchas gracias.

Rodrigo
Respuesta Responder a este mensaje
#2 Eleazar Nuñez
18/11/2005 - 15:09 | Informe spam
hola
cuantos registros tienes en la tabla?

"Rodrigo" escribió en el mensaje
news:
Hola. La idea que estoy utilizando es un correlativo, por el cual, voy
guardando en un campo los numeros, "1,2,3... etc", entonces, con la


función
MAX cuento el número más alto y aumento en 1 para seguir con el


correlativo.
El problema es que cuando llego al número 10 no me aumenta en 1,


mostrándome
siempre el 10, siendo que debería aparecer el 11. La sentencia que estoy
utilizando es la siguiente:

SELECT ISNULL(MAX(numero), 0)+1 AS Siguiente
FROM Correlativo

Espero haber sido claro y que me puedan ayudar. Muchas gracias.

Rodrigo
Respuesta Responder a este mensaje
#3 Rodrigo
18/11/2005 - 20:00 | Informe spam
Mmm, nop.. no lo tengo número, ya que en ese campo tengo algunos textos
también. Pero hice una prueba en una tabla sola, poniendo el campo NVARCHAR,
como lo tenía, me llega hasta el 10. Luego cambie el tipo de dato a INT y ahi
me incrementa en 1 pasando al 11. Claramente es un tema de tipo de dato.
Ahora, hay alguna forma arreglar eso pasando de String a INT?.

"Carlos Sacristán" escribió:

No tiene sentido, la sentencia está bien y desde luego MAX no hace cosas
raras. Estás seguro que 'numero' es numérico y que los datos son correctos?


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Rodrigo" escribió en el mensaje
news:
> Hola. La idea que estoy utilizando es un correlativo, por el cual, voy
> guardando en un campo los numeros, "1,2,3... etc", entonces, con la
función
> MAX cuento el número más alto y aumento en 1 para seguir con el
correlativo.
> El problema es que cuando llego al número 10 no me aumenta en 1,
mostrándome
> siempre el 10, siendo que debería aparecer el 11. La sentencia que estoy
> utilizando es la siguiente:
>
> SELECT ISNULL(MAX(numero), 0)+1 AS Siguiente
> FROM Correlativo
>
> Espero haber sido claro y que me puedan ayudar. Muchas gracias.
>
> Rodrigo



Respuesta Responder a este mensaje
#4 Mauro
18/11/2005 - 20:07 | Informe spam
hacele un cast antes de incrementarlo

"Rodrigo" wrote in message
news:
Mmm, nop.. no lo tengo número, ya que en ese campo tengo algunos textos
también. Pero hice una prueba en una tabla sola, poniendo el campo


NVARCHAR,
como lo tenía, me llega hasta el 10. Luego cambie el tipo de dato a INT y


ahi
me incrementa en 1 pasando al 11. Claramente es un tema de tipo de dato.
Ahora, hay alguna forma arreglar eso pasando de String a INT?.

"Carlos Sacristán" escribió:

> No tiene sentido, la sentencia está bien y desde luego MAX no hace


cosas
> raras. Estás seguro que 'numero' es numérico y que los datos son


correctos?
>
>
> Un saludo
>
> -
> "Sólo sé que no sé nada. " (Sócrates)
>
> "Rodrigo" escribió en el mensaje
> news:
> > Hola. La idea que estoy utilizando es un correlativo, por el cual, voy
> > guardando en un campo los numeros, "1,2,3... etc", entonces, con la
> función
> > MAX cuento el número más alto y aumento en 1 para seguir con el
> correlativo.
> > El problema es que cuando llego al número 10 no me aumenta en 1,
> mostrándome
> > siempre el 10, siendo que debería aparecer el 11. La sentencia que


estoy
> > utilizando es la siguiente:
> >
> > SELECT ISNULL(MAX(numero), 0)+1 AS Siguiente
> > FROM Correlativo
> >
> > Espero haber sido claro y que me puedan ayudar. Muchas gracias.
> >
> > Rodrigo
>
>
>
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida