wy520cj 2009-10-29 12:26
浏览 174
已采纳

oracle查询

传入一个ID,表如下:
id,name,parentId,
查询在一条记录中是否有与之相关的子记录。
我写的语 句如下,但查不出来,不知道怎么修改为好,谢谢
select count(*) from MATERIAL_COLUMN where PARENT_COLUMN_ID in (SELECT ID FROM MATERIAL_COLUMN WHERE PARENT_COLUMN_ID=-1)
请问一下怎么修改为好呢。
[b]问题补充:[/b]
我需要的是得到父节点下的子节点和个数,在删除的时候好判断,如果父节点下面有子节点就不能删除,如果没有的话就可以删除。谢谢一楼的回答,但是SELECT count(*) FROM 表名 START WITH ID =#id:NUMERIC# CONNECT BY PARENT_COLUMN_ID= PRIOR ID查询出来后,删除子节点也会提得出一条数据。

  • 写回答

2条回答 默认 最新

  • CaiHuajiang 2009-10-29 13:35
    关注

    [quote] 2.查找一个节点的直属子节点(所有儿子)。 如果查找的是直属子类节点,也是不用用到树型查询的。
    Sql代码

    1. SELECT * FROM flfl WHERE sjflid = 819459;

    SELECT * FROM flfl WHERE sjflid = 819459;

      这个可以找到ID为819459的直属子类节点。
    
    
    
      3.查找一个节点的所有 直属子节点(所有后代)。
    

    Sql代码

    1. SELECT * FROM flfl START WITH ID = 819459 CONNECT BY sjflid = PRIOR ID;

    SELECT * FROM flfl START WITH ID = 819459 CONNECT BY sjflid = PRIOR ID;

      这个查找的是ID为819459的节点下的所有直属子类节点,包括子辈的和孙子辈的所有直属节点。[/quote]
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 数学的三元一次方程求解
  • ¥20 iqoo11 如何下载安装工程模式
  • ¥15 本题的答案是不是有问题
  • ¥15 关于#r语言#的问题:(svydesign)为什么在一个大的数据集中抽取了一个小数据集
  • ¥15 C++使用Gunplot
  • ¥15 这个电路是如何实现路灯控制器的,原理是什么,怎么求解灯亮起后熄灭的时间如图?
  • ¥15 matlab数字图像处理频率域滤波
  • ¥15 在abaqus做了二维正交切削模型,给刀具添加了超声振动条件后输出切削力为什么比普通切削增大这么多
  • ¥15 ELGamal和paillier计算效率谁快?
  • ¥15 蓝桥杯单片机第十三届第一场,整点继电器吸合,5s后断开出现了问题