* Get pickup zone, drop off zone, and client number for all non-canceled trips in datespan SELECT cpzone, cdzone, clientkey ; FROM Trip_History ; INTO CURSOR pdc ; WHERE (cStatus <> "CXL") AND BETWEEN(TTOD(tdatetime), pdBegin, pdEnd) * Get a list of all zones used in datespan SELECT DISTINCT PADR(cpzone,10) AS zone ; FROM pdc ; INTO CURSOR allzones ; UNION ; SELECT DISTINCT PADR(cdzone,10) AS zone ; FROM pdc ; * Get all the distinct pickup zone/client keys SELECT DISTINCT cPzone, clientkey ; FROM pdc ; INTO CURSOR pzck * Get each pickup zone and a count of clients picked up in that zone SELECT cPzone, COUNT(clientkey) AS NumClts ; FROM pzck ; GROUP BY cPzone ; INTO CURSOR pzcount * Get all the distinct drop off zone/client keys SELECT DISTINCT cDzone, clientkey ; FROM pdc ; INTO CURSOR dzck * Get each drop off zone and a count of clients dropped off in that zone SELECT cdzone, COUNT(clientkey) AS NumClts ; FROM dzck ; GROUP BY cDzone ; INTO CURSOR dzcount *Gather the above cursors together as zone description, #clients PU, #clients DO SELECT A.zone, D.cdesc, B.NumClts AS pics, C.NumClts AS drops ; FROM allzones A LEFT OUTER JOIN pzcount B ON A.zone = B.cPzone ; LEFT OUTER JOIN dzcount C ON A.zone = C.cDzone ; LEFT OUTER JOIN zones D ON A.zone = D.ccode ; INTO CURSOR zpd