0

我正在尝试通过以下方式填充我的变量。
显然,我做错了什么。

...

BEGIN
  DECLARE p_f1,p_f2 INT;
  SELECT
          f1 INTO p_f1,
          f2 INTO p_f2
  FROM
          t1
  LIMIT 1;
END

填充 p_f1 和 p_f2 的正确语法是什么?

4

3 回答 3

2

您只需为整个列/变量列表指定一次 INTO。

BEGIN
  DECLARE p_f1,p_f2 INT;
  SELECT
          f1, f2 INTO p_f1, p_f2
  FROM
          t1
  LIMIT 1;
END

与往常一样,每当我看到没有使用 ORDER BY 的 LIMIT 时,我都会有点担心。通过指定明确的顺序,确保您每次都能始终获得相同的结果。

于 2012-01-18T19:10:11.133 回答
1
  SELECT
          f1,f2 
  INTO 
          p_f1,p_f2
  FROM
          t1
  LIMIT 1;
于 2012-01-18T19:08:47.827 回答
0

你应该做这个

开始声明 p_f1 t1.f1%Type,p_f2 t1.f2%Type;
SELEC1.f2%类型

      f1,f2 into p_f1,
      p_f2   FROM
      t1   LIMIT 1; END
于 2012-01-18T19:09:13.853 回答