SELECT t.nickname addressName, t.packages, t.priority, t.id, t.clientFk, t.companyFk, t.routeFk, if(a.phone, a.phone, c.phone) AS phone, if(a.mobile, a.mobile, c.mobile) AS mobile, wh.name warehouseName, a.city, a.street, a.postalCode, LPAD(a.id, 5, '0') AS addressFk, p.name province, 0 AS import, am.name ticketAgency, tob.description, u.nickName salesPersonName, ipkg.itemPackingTypes FROM route r LEFT JOIN ticket t ON t.routeFk = r.id LEFT JOIN address a ON a.id = t.addressFk LEFT JOIN client c ON c.id = t.clientFk LEFT JOIN worker w ON w.id = client_getSalesPerson(t.clientFk, CURDATE()) LEFT JOIN account.user u ON u.id = w.id LEFT JOIN ticketObservation tob ON tob.ticketFk = t.id AND tob.observationTypeFk = 3 LEFT JOIN province p ON a.provinceFk = p.id LEFT JOIN warehouse wh ON wh.id = t.warehouseFk LEFT JOIN agencyMode am ON am.id = t.agencyModeFk LEFT JOIN ( SELECT t.id AS ticketFk, GROUP_CONCAT(DISTINCT(i.itemPackingTypeFk)) AS itemPackingTypes FROM route r JOIN ticket t ON t.routeFk = r.id JOIN sale s ON s.ticketFk = t.id JOIN item i ON i.id = s.itemFk WHERE r.id IN (?) GROUP BY t.id ) ipkg ON ipkg.ticketFk = t.id WHERE r.id IN (?) ORDER BY t.priority, t.id;