SQL - Dividir una columna con multiples registros en varias columnas

 
Vista:

Dividir una columna con multiples registros en varias columnas

Publicado por juan bautista goicoechea (1 intervención) el 16/09/2019 15:18:00
Hola buenos dias. Es la primera vez que publico aqui, asi que si me equivoco por favor haganmelo saber.

Tengo una base de datos que maneja usuarios sobre una tabla, llamada a partir de ahora users. El software permite agregar campos al registro del usuario, pero esos campos nuevos no se añaden a la tabla users, si no que se generan en otra tabla que se llama "extra_fields". hasta ahi bien, en la tabla "extra_fields" el sistema almacena los nuevos campos generados con un id para cada uno.

Cuando uno graba un usuario nuevo la tabla "extra_fields_values" graba los datos de los "extra_fields".

Ahi mi problema, necesito sacar estos datos para poder armar un mini programa de consultas referente a los usuarios.

El problema es que la tabla "extra_fields_values" graba sobre una sola columna llamada "value" todos los campos agregados en el registro del usuario, y con una columna "id_field" conecta con la tabla "extra_fields" para saber cual es el dato que graba y con una columna "id_item" conecta con la tabla user para identeficar el usuario.

Cuando hago un inner join entre la tabla "user" y "extra_fields_values" me trae los registros bien, pero el problema que tengo que me repite el mismo usuario por cada campo grabado en la columna "value"

Lo que necesito es poder dividir (justamente en 3 porque son los camppos extras que tengo en el registro del usuario) en 3 la columna de "value" y que por el "id_field" pueda asiganar a cada columna sus valores correspondientes(por ejemplo el documento de identidad) y que a traves de un inner join con la tabla users pueda mostrar el usuario con sus 3 columnas con esos datos.

Espero haber sido claro

Muchas gracias
Saludos!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder