-2
DELIMITER |
CREATE EVENT CestaTicket
ON SCHEDULE EVERY 1 SECOND
DO 
BEGIN    
 DECLARE var INT;
 DECLARE contador INT; 
 DECLARE valor FLOAT; 
 SET contador=0;
 SET var=0;
 SET valor=0;
 WHILE (var<(SELECT COUNT(DISTINCT IdEmpleado) FROM asistencia WHERE (Asistio=1 AND (Fecha BETWEEN (Now() AND DATE_SUB(CURDATE(),INTERVAL 30 DAY))))))
   SELECT COUNT(IdEmpleado) INTO contador FROM asistencia 
   WHERE (IdEmpleado=var AND Fecha BETWEEN (Now() AND DATE_SUB(CURDATE(),INTERVAL 30 DAY)));

      IF (contador>0)      
      SET valor = contador*0.95*95;      
      INSERT INTO reporte (Emision,Descripcion,Accion,IdEmpleado) 
      VALUES (Now(),CONCAT('El monto asignado para el empleado es: ',CAST(valor AS VARCHAR(30))),'Monto CestaTicket',var);
  END IF;
      var = var + 1;        
  END WHILE;

END |

DELIMITER ;
`

我想知道是否有人可以通过告诉我代码有什么问题来帮助我,我是 MySQL 句子的新手,所以请耐心等待!

4

1 回答 1

0

使用“分隔符 |;” 而不是“分隔符 |” 如果您指的是此错误“您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本相对应的手册,以了解在 '))) 附近使用的正确语法)) SELECT COUNT(IdEmpleado) INTO contador FROM asistencia WHERE ( IdEm' 在第 11 行"

于 2012-07-03T07:14:37.903 回答