oracle菜鸟求翻译!急!!!!!急!!各位大大求告诉!

xiaozhuoxt 2013-11-10 09:09:37
DECLARE @KMJB int
SET @KMJB=2
WHILE @KMJB<(select max(kmjb)+1 from atbl)
BEGIN
update atbl
set kmqc=(select distinct A.kmqc+'-'+atbl.kmmc from atbl A
WHERE A.dzbh=atbl.dzbh
AND A.kmbm=atbl.sjkmbm
)
WHERE kmjb=@kmjb
set @kmjb=@kmjb+1
end

这是sqlserver中的语句 根据kmjb循环得到kmqc,怎么在oracle中编写declare.
...全文
132 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
游戏人间 2013-11-14
  • 打赏
  • 举报
回复



DECLARE V_KMJB NUMBER DEFAULT 2,V_NUM NUMBER;
BEGIN
SELECT MAX(KMJB)+1 INTO V_NUM FROM ATBL;

WHILE V_KMJB<V_NUM LOOP

UPDATE ATBL SET  KMQC=(SELECT DISTINCT A.KMQC || '-' || ATBL.KMMC FROM ATBL A 
			WHERE A.DZBH=ATBL.DZBH AND A.KMBM=ATBL.SJKMBM)
WHERE KMJB=V_KMJB;

V_KMJB:=VKMJB+1;

END LOOP;
END;
游戏人间 2013-11-14
  • 打赏
  • 举报
回复
DECLARE V_KMJB NUMBER DEFAULT 2,V_NUM NUMBER; SELECT MAX(KMJB)+1 INTO V_NUM FROM ATBL; WHILE V_KMJB<V_NUM LOOP UPDATE ATBL SET KMQC=(SELECT DISTINCT A.KMQC || '-' || ATBL.KMMC FROM ATBL A WHERE A.DZBH=ATBL.DZBH AND A.KMBM=ATBL.SJKMBM) WHERE KMJB=V_KMJB V_KMJB:=VKMJB+1; END LOOP;

3,491

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧