Ver Mensaje Individual
  #8 (permalink)  
Antiguo 06/09/2011, 04:17
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 4 meses
Puntos: 574
Respuesta: problema count tablas diferentes misma query

Siempre los alias....

Código MySQL:
Ver original
  1. SELECT c.iataCompanyCode as company,
  2. sum(c.numArrivals) as Arrivals,
  3. sum(c.numDep) as Departures
  4. FROM ((SELECT DISTINCT a.iataCompanyCode as company,
  5.                                        count(a.idArrivalFlight) as numArrivals,
  6.                                        0 as numDep
  7.                        FROM `aodb`.`arrivalFlight` a
  8.                        WHERE a.iataCompanyCode IN ('SPP','IB')
  9.                        AND a.scheduledTime BETWEEN '2011-01-01 00:00:00'
  10.                                   AND '2011-09-01 00:00:00'
  11.                        GROUP BY a.iataCompanyCode,0) as Sbc1  
  12.            (SELECT DISTINCT b.iataCompanyCode as company,
  13.                                        0 as numArrivals,
  14.                                        count(b.idDepartureFlight) as numDep
  15.              FROM `aodb`.`departureflight` b
  16.              WHERE b.iataCompanyCode IN ('SPP','IB')
  17.              AND b.scheduledTime BETWEEN '2011-01-01 00:00:00'
  18.                   AND '2011-09-01 00:00:00'
  19.              GROUP BY b.iataCompanyCode,0) as sbc2
  20. ) as c
  21. GROUP BY c.iataCompanyCode;

Yo diria que el union no necesita alias pero por intentarlo no pasa nada....

He puesto alias a las subquery del UNION (sbc1,sbc2), tambien he agregado el alias c a los SUM ...

En tu codigo sobra un parentesis dse cierre )) as c

Ya te digo que estoy escribiendo al vuelo, se que debe funcionar, pero no tengo tu estructura para probarlo... pero como te dice es un problema de alias (Every derived table must have its own alias Toda tabla derivada debe tener su propio alias)

...
GROUP BY a.iataCompanyCode,0
...
GROUP BY b.iataCompanyCode,0
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 06/09/2011 a las 04:22