Números de sistema con ceros principales en el servidor SQL
En SQL Server, puede encontrar situaciones en las que necesita formatear los valores con ceros líderes para mejorar el rendimiento de la pantalla o la eficiencia de transferencia de datos. Resolvamos este problema con un ejemplo concreto:
pregunta:
Tenemos una tabla SQL con números de empleados almacenados como cadenas de caracteres de longitud 6 (por ejemplo, '000001' a '999999'). Queremos crear una nueva tabla con el número de trabajo como entero para mejorar el procesamiento de datos. ¿Cómo modifico una consulta SQL para formatear el valor entero devuelto a '000000' (con ceros principales)?
Respuesta:
Para lograr este formato, podemos usar las funciones replicate () y len ():
SELECT REPLICATE('0', 6 - LEN(EmployeeID)) EmployeeID
]
Aquí está cómo funciona:
replicate ('0', 6 - len (EmployeeId))
crea una cadena cero con una longitud igual a 6 menos la longitud de EmployeeId. Por ejemplo, si el EmployeId es 7135, la consulta devolverá '007135'.
Aviso:
SELECT REPLICATE('0', 6 - LEN(RTRIM(EmployeeID))) RTRIM(EmployeeID)
]
SELECT RIGHT(EmployeeID, (LEN(EmployeeID) - PATINDEX('%[^0]%', EmployeeID)) 1)
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3