25 lines
636 B
MySQL
25 lines
636 B
MySQL
|
|
||
|
DROP procedure IF EXISTS `vn`.`routeGuessPriority`;
|
||
|
|
||
|
DELIMITER $$
|
||
|
CREATE DEFINER=`root`@`%` PROCEDURE `vn`.`routeGuessPriority`(IN vRuta INT)
|
||
|
BEGIN
|
||
|
/* Usa los valores del ultimo año para adivinar el orden de los tickets en la ruta
|
||
|
* vRuta id ruta
|
||
|
*/
|
||
|
UPDATE ticket mt
|
||
|
JOIN (
|
||
|
SELECT tt.addressFk, ROUND(IFNULL(AVG(t.priority),0),0) AS priority
|
||
|
FROM ticket t
|
||
|
JOIN ticket tt ON tt.addressFk = t.addressFk
|
||
|
WHERE t.shipped > TIMESTAMPADD(YEAR,-1,CURDATE())
|
||
|
AND tt.routeFk = vRuta
|
||
|
GROUP BY addressFk
|
||
|
) sub ON sub.addressFk = mt.addressFk
|
||
|
SET mt.priority = sub.priority
|
||
|
WHERE mt.routeFk = vRuta;
|
||
|
END$$
|
||
|
|
||
|
DELIMITER ;
|
||
|
|