SELECT t.nickname addressName, t.packages, t.priority, t.id, t.clientFk, t.companyFk, t.routeFk, if(a.phone, a.phone, c.phone) phone, if(a.mobile, a.mobile, c.mobile) mobile, wh.name warehouseName, a.city, a.street, a.postalCode, LPAD(a.id, 5, '0') addressFk, p.name province, 0 import, am.name ticketAgency, tob.description, u.nickName salesPersonName, ipkg.itemPackingTypes FROM route r 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;