Eliminar coma de un string en variable

Les cuento tengo un plsql donde tengo una variable que guarda un string, la variable esta en negrita y el la coma que debo eliminar también.

El problema es en la salida ya que me deja una coma inicial justo después del select:
select  , columna1,columna2,columna3,columna4 from tabla

Favor me pueden ayudar a resolver esto para ejecutar un sql dinámico.

BEGIN
FOR r_cur_obt_tab IN c_obt_tab
LOOP
lv_select_col := NULL; -- limpio variable
FOR r_cur_obt_col IN c_obt_col (r_cur_obt_tab.bafuin_nmb_tab)
LOOP
lv_select_col := lv_select_col || ',' || r_cur_obt_col.badida_nmb_tec_col;
END LOOP;

DBMS_OUTPUT.PUT_LINE (
'SELECT '
|| lv_select_col
|| ' FROM '
|| r_cur_obt_tab.bafuin_nmb_tab);
END LOOP;
END;
[b]
Muchas Gracias por su colaboración

1 Respuesta

Respuesta
2

Puedes crear una variable entera que cuente el número de vueltas del loop y si dicha variable vale 1 no añadir la coma. Por ejemplo:

BEGIN
FOR r_cur_obt_tab IN c_obt_tab
LOOP
lv_select_col := NULL; -- limpio variable

num :=1
FOR r_cur_obt_col IN c_obt_col (r_cur_obt_tab.bafuin_nmb_tab)
LOOP

If Num > 1 rhen
lv_select_col := lv_select_col || ',' || r_cur_obt_col.badida_nmb_tec_col;

Else

lv_select_col := r_cur_obt_col.badida_nmb_tec_col;

End if;

num:=num+1;
END LOOP;

DBMS_OUTPUT.PUT_LINE (
'SELECT '
|| lv_select_col
|| ' FROM '
|| r_cur_obt_tab.bafuin_nmb_tab);
END LOOP;
END;
[

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas