이 함수에는 어떤 문제가 있습니다. 여기 내 예상 출력은MySQL은 동등한 수의 값 범위에 대한 함수를 만듭니다.
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 ;
출력입니다 : 난 항상 10
실제 출력은 무엇입니까? – Poodlehat
현재 출력은 무엇입니까? – CristiC
출력을 추가하면 항상 10이됩니다 –