0

给定一个像这样的简单表格:

var1 | var2
  0  |  3
  2  |  4
  6  |  5

我需要返回不存在记录(在本例中为 4)或 var2 等于 5(在本例中为 6)的最小值(var1,作为 2 的倍数)。我需要将其作为单个查询进行,但不幸的是我是 MySQL 函数的新手。

我试图创建一个这样的函数:

DELIMITER //

CREATE FUNCTION Prova ( starting_value INT ) returns int;
BEGIN
   DECLARE testNum INT DEFAULT 0;
  test_loop : LOOP
    IF (SELECT db.tabella WHERE var1 = testNum AND var2 <= 5) OR WHERE NOT EXISTS (
    SELECT * FROM db.tabella WHERE var1 = 'testNum'
) LIMIT 1; THEN
    RETURN testNum;
    END IF;
SET testNum = testNum + 2;
SELECT testNum; 
END LOOP; 

END;

但它似乎不起作用。谢谢你。

4

0 回答 0