"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo formatear los valores enteros con ceros principales en SQL Server?

¿Cómo formatear los valores enteros con ceros principales en SQL Server?

Publicado el 2025-03-24
Navegar:494

How to Format Integer Values with Leading Zeros in SQL Server?

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.
  • luego, use el operador para concatenar esta cadena cero con EmployeeId, lo que resulta en una cadena formateada con ceros principales.

Por ejemplo, si el EmployeId es 7135, la consulta devolverá '007135'.

Aviso:

  • Si la columna de EmployeeID se declara int, puede usar la función rtrim () para convertirlo implícitamente en varchar:
SELECT REPLICATE('0', 6 - LEN(RTRIM(EmployeeID)))   RTRIM(EmployeeID)
]
  • Para eliminar el cero líder y obtener el número original, use la siguiente consulta:
SELECT RIGHT(EmployeeID, (LEN(EmployeeID) - PATINDEX('%[^0]%', EmployeeID))   1)
Último tutorial Más>

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