Ver Mensaje Individual
  #4 (permalink)  
Antiguo 30/10/2016, 20:55
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Problemas con sentencia ORDER BY + UNION

creo que tu error va de que no se pueden ordernar los datos de los queries que forman parte de una sentencia union, prueba con esto:

Código MySQL:
Ver original
  1. INSERT INTO email_queues (queueid, queuetype, ownerid, recipient, processed)
  2.  
  3.     SELECT DISTINCT 13, 'send', 1, subscribers.subscriberid, 0
  4.     FROM email_list_subscribers AS subscribers
  5.     JOIN email_lists AS lists ON lists.listid = subscribers.listid AND lists.listid IN (1)
  6.         WHERE subscribers.listid IN (1)
  7.             AND (    
  8.                     (
  9.                         subscribers.subscriberid IN (
  10.                                                         SELECT d.subscriberid AS subscriberid
  11.                                                         FROM email_subscribers_data d
  12.                                                         WHERE d.fieldid = 15 AND d.DATA < 51
  13.                                                     )
  14.                     )
  15.                 )
  16.             AND (subscribers.unsubscribed=0 AND subscribers.bounced=0)
  17.    
  18.     UNION
  19.  
  20.     SELECT DISTINCT 13, 'send', 1, subscribers.subscriberid, 0
  21.     FROM email_list_subscribers AS subscribers
  22.     JOIN email_lists AS lists ON lists.listid = subscribers.listid AND lists.listid IN (1)
  23.         WHERE subscribers.listid IN (1)
  24.             AND (
  25.                     (
  26.                         subscribers.subscriberid IN (
  27.                                                         SELECT d.subscriberid AS subscriberid
  28.                                                         FROM email_subscribers_data d
  29.                                                         WHERE d.fieldid = 16 AND d.DATA < 4
  30.                                                     )
  31.                     )
  32.                 )
  33.             AND (subscribers.unsubscribed=0 AND subscribers.bounced=0)
  34.     ) as subconsulta
  35.     ORDER BY subscribedate ASC
  36.     LIMIT 1000000000
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me