Vanel
Bovino maduro
- Desde
- 9 Mar 2009
- Mensajes
- 207
- Tema Autor
- #1
Que tal amigos bakunos, muy buenas noches, miren mi problema es el siguiente, yo pretendo crear un procedimiento almacenado el cual se encargue de concatenar 3 columnas y ya que esten las tres columnas concatenadas, en la primera columna me haga un update poniendo el campo concatenado.
Ejemplo:
tengo una tabla con 3 campos
inventario tipoequipo region
12345 escritorio oaxaca
lo que quiero hacer con el procedimiento almacenado es esto:
inventario tipoequipo region
1234eoax escritorio oaxaca
si se dan cuenta solo concateno los primeros 4 numeros de inventario, la primera letra del tipo de equipo y las tres primeras letras de region y lo que tenia antes en inventario lo sustituyo por ya los campos concatenados.
Miren esto es lo que tengo de codigo, pero solo logro sacar la consulta, me gustaria hacer el update, me pueden ayudar porfavor?
Ejemplo:
tengo una tabla con 3 campos
inventario tipoequipo region
12345 escritorio oaxaca
lo que quiero hacer con el procedimiento almacenado es esto:
inventario tipoequipo region
1234eoax escritorio oaxaca
si se dan cuenta solo concateno los primeros 4 numeros de inventario, la primera letra del tipo de equipo y las tres primeras letras de region y lo que tenia antes en inventario lo sustituyo por ya los campos concatenados.
Miren esto es lo que tengo de codigo, pero solo logro sacar la consulta, me gustaria hacer el update, me pueden ayudar porfavor?
Código:
create function concatenar(varchar)
returns varchar
as $$
declare
inven varchar;
tip varchar;
reg varchar;
res varchar;
begin
inven:= $1;
select substring(tipoequipo from 1 for 1) into tip from directorio where inventario=inven;
select substring(region from 1 for 3) into reg from directorio where inventario=inven;
select substring(inven from 1 for 4) into inven from directorio where inventario=inven;
res:= inven || tip || reg;
return res;
end;
$$
language 'plpgsql';