You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PL/SQL中声明变量?我的查询运行失败该如何解决

问题原因

你代码的核心问题是没有将COUNT查询的结果赋值给声明的my_variable变量,变量始终处于未赋值的空值状态,因此插入操作无法拿到预期值。

修正后代码(适配PostgreSQL plpgsql语法,匹配你使用的int4类型)

BEGIN
DECLARE my_variable int4;
-- 通过INTO关键字将查询结果赋值给变量
select count(*)
into my_variable
from documento d 
inner join remesa r 
on r.id = d.remesa_id
where r.id=2;
insert into endoso (endoso,endosos_por_dia)
values(my_variable,2);
END

补充说明

如果要适配其他SQL方言可以调整变量赋值逻辑:

  • MySQL场景下可以写成 SET my_variable = (SELECT count(*) FROM ...);
  • SQL Server场景下可以写成 SELECT @my_variable = count(*) FROM ...;

内容的提问来源于stack exchange,提问作者melolo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.22 00:36:07