在MySql过程中,我想做一个单独的查询,将列的值放入变量中,并返回一行。
我的程序的简化版本包括这个(它不起作用)......
DECLARE tempid INT DEFAULT 0;
SELECT
tempid := `id`,
`name`
FROM `table`
WHERE `id` = 1;
尝试了其他变体,例如......
tempid = `id`,
`name`
...并使用INTO
,但我无法返回其他列...
`id` INTO tempid,
`name`
如果我使用会话变量,我可以做我需要的,但是可以对过程变量做同样的事情吗?
即。这有效,但为什么我不能使用过程变量? (有点烦人,你必须重新定义列名,否则它会变成@tempid := id
)...
@tempid := `id` AS `id`,
`name`