Hola Emanuel, El problema con las tablas temporales es que tengo alta concurrencia en la llamada a la función y con tablas temporales no se resuelve muy bien, al menos con mis conocimientos actuales. Un saludo.
El 24 de agosto de 2016, 15:26, Emanuel Calvo <3man...@gmail.com> escribió: > El día 24 de agosto de 2016, 8:52, José Hurtado <jhurta...@gmail.com> > escribió: > > Hola, > > > > Creo que vendría bien tener algo parecido a: > > > > DECLARE > > dic1 HASHSET(varchar, schema_name.table_name); > > -- format: HASHSET(anytype, anytype) > > ... > > BEGIN > > ... > > ... > > IF (hashset_has_key(dic1, "alfa") THEN > > dic1["alfa"] := (val1, val2)::schema_name.table_name; > > -- O: hashset_update(dic1, "alfa", (val1, > > val2)::schema_name.table_name); > > ELSE > > hashset_add(dic1, "alfa", (val1, val2)::schema_name.table_name); > > END IF; > > ... > > hashset_remove(dic1, "alfa"); > > > > ... > > END; > > > > Ahora estoy implementando algo parecido con tablas temporales, pero creo > que > > con una estructura así se podrían resolver mejor ciertos algoritmos. > > > > Que estás queriendo solucionar? IMHO, no hace falta tanto código, haces una > tabla con 2 columnas (tabla y hash), una constraint de unique en ambas. > > Si lo que querés es simular métodos para encapsular las escrituras y eso, > lo podés hacer con mucho menos código si usas las features existentes. > > Igual, creo que no estás comentando el origen de todos los males. > > > > > > > -- > -- > Emanuel Calvo > 3manuek.com >