Ver Mensaje Individual
  #7 (permalink)  
Antiguo 18/11/2014, 09:18
MusiDMusi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Consulta en dos tablas (ordenación)

La consulta es está:
Código MySQL:
Ver original
  1. SELECT `u`.* FROM `bgs_base_user` AS `u`
  2.  
  3. INNER JOIN `bgs_base_user` base_user_table_alias ON base_user_table_alias.`id` = `u`.`id`
  4.  
  5. LEFT JOIN `bgs_base_user_suspend` base_user_suspend_table_alias ON base_user_suspend_table_alias.`userId` = `base_user_table_alias`.`id` INNER JOIN `bgs_base_user_online` AS `o` ON(`u`.`id` = `o`.`userId`)
  6.  
  7. LEFT JOIN `bgs_base_avatar` AS `a` ON `o`.`id` = `a`.`userId` ORDER BY `o`.`activityStamp`
  8.  
  9. WHERE (`base_user_suspend_table_alias`.`id` IS NULL)
  10.  
  11. ORDER BY `o`.`activityStamp` DESC LIMIT ?, ?

Una vez añadido el ORDER BY del segundo LEFT JOIN el error es:
Cita:
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE (`base_user_suspend_table_alias`.`id` IS NULL) ORDER BY `o`.' at line 6
Como véis estoy con dos tablas más, pero he simplificado ya que si se hacerlo simplificado lo puedo implementar con toda la consulta.