ltrim funcion as400 sql db2 trim

funcion - DB2 SQL Query Trim dentro de recorte



trim as400 (2)

Tu código hace lo siguiente.

Línea 1: si el prefijo está entre ''00'' y ''99''

Line2: Luego recorte los espacios del prefijo y luego agregue -

Line3: A continuación, agregue CLNUMBER eliminando primero el 0 CLNUMBER de CLNUMBER

Puede buscar la sintaxis de la función TRIM aquí

Estoy transfiriendo algunas consultas SQL al código C #, ahora estoy teniendo problemas para entender la siguiente consulta. Hasta ahora, mi comprensión de la siguiente consulta es: Si PREFIX está entre 0 y 99 , entonces recorte PREFIX , pero ¿qué hace? || ''-'' || significa aquí? Mi comprensión para la línea 3 es después de terminar la función de recorte en la línea 2, hacer otro ajuste, pero tampoco reconozco la sintaxis en la línea 3. Esto es DB2.

RETURN CASE WHEN PREFIX BETWEEN ''00'' AND ''99'' //line 1 THEN TRIM(PREFIX) || ''-'' || //line 2 TRIM(TRIM(L ''0'' FROM DIGITS(CLNUMBER))) //line 3


  • DIGITS(CLNUMBER) devuelve el número almacenado en CLNUMBER como una cadena con ceros a la izquierda.
  • TRIM(L ''0'' FROM something) elimina los ceros a la izquierda de algo.
  • TRIM(something) elimina los espacios en blanco y de entrenamiento de algo.
  • || concatena cadenas.

PREFIX es una cadena. En caso de que contenga un número de dos dígitos, se realiza algún procesamiento:

  1. Primero obtienes ese número recortado, pero debido a la condición no puede haber ningún espacio en blanco, por lo que obtienes la cadena numérica original, por ejemplo, ''12''. (La condición funcionaría en ''01'' pero ignorar ''1'' o ''1'').
  2. Luego ''-'' se agrega, entonces tienes ''12 - ''.
  3. Luego obtienes CLNUMBER como una cadena con ceros a la izquierda y eliminando los espacios iniciales y de entrenamiento. Digamos que CLNUMBER contiene ''0345'', luego obtendrías ''345''.
  4. Entonces esto también se concatenará y finalmente obtendrás ''12 -345 ''.