Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/08/2016, 10:56
Avatar de hmvr414
hmvr414
 
Fecha de Ingreso: marzo-2011
Ubicación: Santiago de Cali, Colombia
Mensajes: 74
Antigüedad: 13 años, 1 mes
Puntos: 16
Consultar multiples registros de la tabla wp_usermeta para cada usuario en wp_users

Hola,

estoy generando una consulta SQL para obtener los datos de cada usuario de wordpress (tabla wp_user), los datos como fecha nacimiento, telefono, celular, etc. se almacenan en wp_usermeta, la consulta actual es:

Código SQL:
Ver original
  1. SELECT u.*, nombre.meta_value nombre, apellido.meta_value apellido, cedula.meta_value cedula, fijo.meta_value fijo, celular.meta_value celular, fecha_nacimiento.meta_value fecha_nacimiento, sexo.meta_value sexo, departamento.meta_value departamento, ciudad.meta_value ciudad  FROM `wp_users` u
  2. LEFT JOIN (SELECT user_id, meta_value FROM `wp_usermeta`  WHERE `meta_key` = 'pie_text_4') nombre ON nombre.user_id = u.id
  3. LEFT JOIN (SELECT user_id, meta_value FROM `wp_usermeta`  WHERE `meta_key` = 'pie_text_3') apellido ON apellido.user_id = u.id
  4. LEFT JOIN (SELECT user_id, meta_value FROM `wp_usermeta`  WHERE `meta_key` = 'pie_text_7') cedula  ON cedula.user_id = u.id
  5. LEFT JOIN (SELECT user_id, meta_value FROM `wp_usermeta`  WHERE `meta_key` = 'pie_text_5') fijo  ON fijo.user_id = u.id
  6. LEFT JOIN (SELECT user_id, meta_value FROM `wp_usermeta`  WHERE `meta_key` = 'pie_text_6') celular  ON celular.user_id = u.id
  7. LEFT JOIN (SELECT user_id, meta_value FROM `wp_usermeta`  WHERE `meta_key` = 'pie_date_9') fecha_nacimiento  ON fecha_nacimiento.user_id = u.id
  8. LEFT JOIN (SELECT user_id, meta_value FROM `wp_usermeta`  WHERE `meta_key` = 'pie_dropdown_13') sexo  ON sexo.user_id = u.id
  9. LEFT JOIN (SELECT user_id, meta_value FROM `wp_usermeta`  WHERE `meta_key` = 'pie_text_11') departamento  ON departamento.user_id = u.id
  10. LEFT JOIN (SELECT user_id, meta_value FROM `wp_usermeta`  WHERE `meta_key` = 'pie_text_12') ciudad   ON ciudad.user_id = u.id

con esta consulta genero la tabla de resultados que requiero, pero estoy usando subconsultas en la clausula FROM esto me impide guardar el resultado como una vista, existe alguna forma de obtener el resultado de forma mas optima?