CREATE PROCEDURE sp_case(input_number INT)
BEGIN
DECLARE c int;
-- SELECT input_number as input_number;
-- SELECT (input_number > 0 AND input_number < 5);
SELECT 2;
-- SELECT (input_number > 5 AND input_number < 10);
CASE input_number
WHEN input_number > 0 AND input_number < 5 THEN
SET c = 0;
WHEN input_number > 5 AND input_number < 10 THEN
SET c = 1;
END CASE;
SELECT c;
END
CALL sp_case(8)
結果報錯: Case not found for CASE statement
select 2 也沒有列印出來。
uj5u.com熱心網友回復:
CASE WHEN input_number > 0 AND input_number < 5 THENSET c = 0;
CASE WHEN input_number > 5 AND input_number < 10 THEN
SET c = 1;
試試
uj5u.com熱心網友回復:
mysql> delimiter //
mysql>
mysql> CREATE PROCEDURE sp_case(input_number INT)
-> BEGIN
-> DECLARE c int;
->
-> CASE
-> WHEN input_number > 0 AND input_number < 5 THEN
-> SET c = 0;
-> WHEN input_number > 5 AND input_number < 10 THEN
-> SET c = 1;
-> END CASE;
->
-> SELECT c;
-> END
->
-> //
Query OK, 0 rows affected (0.03 sec)
mysql>
mysql> delimiter ;
mysql> CALL sp_case(8);
+------+
| c |
+------+
| 1 |
+------+
1 row in set (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
mysql>
uj5u.com熱心網友回復:
去掉CASE后的input_number試試看轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/80881.html
標籤:MySQL
上一篇:mysql讀取5w以內資料的時間能否壓縮到1s以內?
下一篇:求sql陳述句 在線等
