db2树结构表删除操作如何实现???

xmlchd 2010-04-06 04:15:24
头晕了,找了一圈没找到解决办法,db2中如何对树结构表数据进行删除 ?
下面是查寻,删除查找出来的SORT_CD怎么实现?
with temptab(SORT_CD,SORT_NAME,PARENT_SORT_CD) as (
select SORT_CD,SORT_NAME,PARENT_SORT_CD
from CXMART.TN_BM_COL_SORT
where SORT_CD='VHJZ2L8d'
union all
select tn.SORT_CD, tn.SORT_NAME,temp.PARENT_SORT_CD
from CXMART.TN_BM_COL_SORT tn , temptab temp
where tn.PARENT_SORT_CD = temp.SORT_CD
) select SORT_CD from temptab;
...全文
121 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
王帆 2010-04-08
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 xmlchd 的回复:]

通过1楼的例子,完成了,感谢1楼,感谢大家的关注.
SQL code

CREATE FUNCTION DEL_SORT(SORTCD VARCHAR(50))
RETURNS table(S1 VARCHAR(50))
NO EXTERNAL ACTION
F1: BEGIN ATOMIC

RETURN
with temptab(SORT_CD,SORT_NAME,PAR……
[/Quote]
这个应该可以。
shangboerds 2010-04-06
  • 打赏
  • 举报
回复
delete from CXMART.TN_BM_COL_SORT where SORT_CD in
(
with temptab(SORT_CD,SORT_NAME,PARENT_SORT_CD) as (
select SORT_CD,SORT_NAME,PARENT_SORT_CD
from CXMART.TN_BM_COL_SORT
where SORT_CD='VHJZ2L8d'
union all
select tn.SORT_CD, tn.SORT_NAME,temp.PARENT_SORT_CD
from CXMART.TN_BM_COL_SORT tn , temptab temp
where tn.PARENT_SORT_CD = temp.SORT_CD
) select SORT_CD from temptab
);
------------
这样不行吗?
xmlchd 2010-04-06
  • 打赏
  • 举报
回复
通过1楼的例子,完成了,感谢1楼,感谢大家的关注.

CREATE FUNCTION DEL_SORT(SORTCD VARCHAR(50))
RETURNS table(S1 VARCHAR(50))
NO EXTERNAL ACTION
F1: BEGIN ATOMIC

RETURN
with temptab(SORT_CD,SORT_NAME,PARENT_SORT_CD) as (
select SORT_CD,SORT_NAME,PARENT_SORT_CD
from CXMART.TN_BM_COL_SORT
where SORT_CD=SORTCD
union all
select tn.SORT_CD, tn.SORT_NAME,temp.PARENT_SORT_CD
from CXMART.TN_BM_COL_SORT tn , temptab temp
where tn.PARENT_SORT_CD = temp.SORT_CD
) select SORT_CD from temptab;
END;
select S1 from table(DEL_SORT('Pff64fDD') as sort;

DELETE FROM CXMART.TN_BM_COL_SORT WHERE SORT_CD IN( select S1 from table(DEL_SORT('Pff64fDD')) as SORT);
xmlchd 2010-04-06
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 efan101 的回复:]
引用 2 楼 yangxiao_jiang 的回复:

找出来了,删不掉?

不是删不掉,是他不会写语句,呵呵。
[/Quote]

确实不会写语句,请指点,我在前后使用delete语句都不行...
王帆 2010-04-06
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 yangxiao_jiang 的回复:]

找出来了,删不掉?
[/Quote]
不是删不掉,是他不会写语句,呵呵。
yangxiao_jiang 2010-04-06
  • 打赏
  • 举报
回复
找出来了,删不掉?
王帆 2010-04-06
  • 打赏
  • 举报
回复
我也没写过,网上有个例子,是通过函数来实现的,你看一下:
http://www.ixpub.net/thread-857294-1-1.html

5,889

社区成员

发帖
与我相关
我的任务
社区描述
IBM DB2 是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本
社区管理员
  • DB2
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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