tipos tipo soportados smallint significa rango que precio por para ejemplos datos dato sql sql-server sql-server-2005 tsql

smallint - tipos de datos soportados por sql server



entero Constantes de valor máximo en SQL Server T-SQL? (3)

Evite funciones escalares como la peste:
Problema de rendimiento UDF escalar

Dicho esto, no usaría la tabla de 3 columnas sugerida por otra persona.
Esto causaría conversiones implícitas en cualquier lugar donde lo use.
También debería unirse a la mesa varias veces si necesita usarla para más de un tipo.

En su lugar, tenga una columna para cada Mín. Y Máx. De cada Tipo de datos (definido con su propio tipo de datos) y llámelos directamente para compararlos.

Ejemplo:

SELECT * FROM SomeTable as ST CROSS JOIN TypeRange as TR WHERE ST.MyNumber BETWEEN TR.IntMin AND TR.IntMax

¿Hay constantes en T-SQL como las hay en otros lenguajes que proporcionan los rangos de valores máximo y mínimo de tipos de datos como int?

Tengo una tabla de códigos donde cada fila tiene una columna de rango superior e inferior, y necesito una entrada que represente un rango donde el rango superior es el valor máximo que puede contener un int (algo así como un infinito de hackeo). Preferiría no codificarlo y usar algo como SET UpperRange = int.Max


Hay dos opciones:

  • función escalar definida por el usuario
  • tabla de propiedades

En Oracle, puede hacerlo dentro de los paquetes; el servidor SQL más cercano es el de ensamblajes ...


No creo que haya constantes definidas, pero podría definirlas usted mismo almacenando los valores en una tabla o utilizando una función con valores escalares.

Mesa

Configure una tabla que tenga tres columnas: TypeName, Max y Min. De esa manera solo tienes que poblarlos una vez.

Función valorada escalar

Alternativamente, podría utilizar las funciones de valor escalar GetMaxInt () por ejemplo (consulte esta respuesta de para obtener un ejemplo real).

Puede encontrar todos los valores máximo / mínimo aquí: http://msdn.microsoft.com/en-us/library/ms187752.aspx