给定一个数字,如何在 MySql 函数中根据该数字遍历一组数字?
为了获得更清晰的图片,请查看我的问题,我询问如何在 php 中完成这样的事情。在这里提问。
我会做select myfunction(thenumber)
的。根据这个数字,我必须循环。
截至目前,
If thenumber = 1 then loop backward thru 1,4,7 only
If thenumber = 2 then loop thru 3
If thenumber = 3 then loop thru 10
这是我一直在摆弄的功能。
CREATE DEFINER=`root`@`localhost` FUNCTION `whileloop`(`danum` VARCHAR(2050))
RETURNS varchar(1500)
LANGUAGE SQL
NOT DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
COMMENT ''
BEGIN
DECLARE x INT;
DECLARE str VARCHAR(255);
SET x = danum;
SET str = '';
#If x = 1, while = 1, 4, 7////////
WHILE x >= 1 DO //I'm stuck here
SET str = CONCAT(str,x,',');
SET x = x - 1;
END WHILE;
RETURN str;
END
我怎么能在 MySql 函数中做,我在 php.ini 中做了什么。在 php 中,我们将事物存储在一个数组中。我们怎么能在这里做到这一点?
编辑
结果
我最终想要得到的是链接。
So if `thenumber = 1`
`<a href=foo.php?id=1> <a href=foo.php?id=4> <a href=foo.php?id=7>` //3 Links Output in a single row
If `thenumber = 2`
`<a href=foo.php?id=3>` //Same as above. Output in a single row.
If `thenumber = 10`
`<a href=foo.php?id=10>`