Question

Quel est le problème avec cette fonction. Voici ma sortie attendue est

 1 = 10
 2 to 3 = 7
 4 to 10 = 5
 11 to 30 = 2
 31 to 100 = 1


DELIMITER $$
DROP FUNCTION IF EXISTS `computeScore`$$
CREATE DEFINER=`root`@`localhost` FUNCTION  `computeScore`(`POS` INT(11)) RETURNS int(11)
    READS SQL DATA
    DETERMINISTIC
BEGIN
    DECLARE ordinal INT;
    SELECT (
        CASE
          WHEN POS < 2 THEN 10
          WHEN POS >= 2 < 4 THEN 7
          WHEN POS >= 4 < 11 THEN 5
          WHEN POS >= 11 < 31 THEN 2
          ELSE 1
        END )
    INTO ordinal;
    RETURN ordinal;
    RETURN 0;
END;

 $$

DELIMITER ;

Sortie: j'en ai toujours 10

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top