如果我有一个如下定义的表格:mytable(model char(4), price int);
并且我试图找到与给定基准价格的价格最接近的价值,那么我该如何去做呢?SELECT INTO with LIMIT
什么我是这样的:
delimiter //
CREATE FUNCTION findClosestPrice (value int) returns int
BEGIN
DECLARE closestPrice int default -1;
DECLARE row int default 0;
DECLARE rows int default 0;
DECLARE currPrice int default -1;
select count(*) from mytable into rows;
SET row=0;
WHILE row < rows DO
select price from mytable limit row, 1 into currPrice; <----- this gives an error
SET row = row + 1;
END WHILE;
END//
为什么我不能有一个线?
如何从循环中的当前行中选择价格并将其保存到我声明的变量中?我认为这会起作用,但事实并非如此。
改变,仍然留给我一个错误 – ZWiki 2015-03-31 16:05:12
这是什么*错误*阅读!!? – 2015-03-31 16:08:05
'错误1064(42000):您的SQL语法错误;检查对应于你的MySQL服务器版本的手册,在'row,1'附近使用正确的语法;' – ZWiki 2015-03-31 16:09:30