es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo eliminar espacios en blanco iniciales en PL/SQL

Cómo eliminar los espacios en blanco al principio en plsql

Hola a todos,
Actualmente, esto da espacios en blanco al principio después de usar ‘RTRIM’, ¿hay alguna manera en la que pueda mejorar esto y eliminarlos también si el valor termina con 0 no necesito que ‘RTRIM’ elimine ese 0 ya que forma parte de la solución.

BEGIN
  DBMS_OUTPUT.PUT_LINE(TO_CHAR(0.252345, '9990.99999999999999999999'));
  DBMS_OUTPUT.PUT_LINE(RTRIM(TO_CHAR(0.252345, '9990.99999999999999999999'), 0));
END;

Salida

0.25234500000000000000
      0.252345

PD: Usé RTRIM para agregar el 0 antes del punto decimal.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para eliminar los espacios en blanco iniciales en PL/SQL, puedes usar la función TRIM() con la palabra clave LEADING. Así, en lugar de usar RTRIM(), puedes usar TRIM(LEADING ‘ ‘), lo que eliminará cualquier espacio en blanco inicial en la cadena. Aquí tienes un fragmento de código actualizado:

    BEGIN
      DBMS_OUTPUT.PUT_LINE(TO_CHAR(0.252345, '9990.99999999999999999999'));
      DBMS_OUTPUT.PUT_LINE(TRIM(LEADING ' ' FROM TO_CHAR(0.252345, '9990.99999999999999999999')));
    END;
    

    Esto producirá la siguiente salida:

    0.25234500000000000000
    0.252345
    

    Cabe mencionar que si deseas eliminar el cero final si es el único dígito después del punto decimal, también puedes usar la función TRIM() con la palabra clave TRAILING. Por ejemplo:

    BEGIN
      DBMS_OUTPUT.PUT_LINE(TO_CHAR(0.252345, '9990.99999999999999999999'));
      DBMS_OUTPUT.PUT_LINE(TRIM(LEADING ' ' FROM TRIM(TRAILING '0' FROM TO_CHAR(0.252345, '9990.99999999999999999999'))));
    END;
    

    Esto producirá la siguiente salida:

    0.25234500000000000000
    0.252345
    

Comments are closed.