select count(1) from Tt_Device_Point point full join tt_area area on point.AREA_ID in (SELECT area_id FROM Tt_Area t START WITH t.area_id = point.AREA_ID CONNECT BY t.tt__area_id = PRIOR t.area_id);需求是统计所有区域对应的设备总数

解决方案 »

  1.   

     PRIOR  t.tt__area_id = t.area_id
      

  2.   


    SELECT area_id 
    FROM Tt_Area t 
    START WITH t.area_id = point.AREA_ID 
    CONNECT BY  PRIOR t.tt__area_id = t.area_id
      

  3.   

    select area.area_id, area.area_code, area.area_name, (select count(1) from Tt_Device_Point p where p.area_id in (SELECT area_id FROM Tt_Area t START WITH t.area_id = area.AREA_ID CONNECT BY t.tt__area_id = PRIOR t.area_id)) from Tt_Area area搞定了,自己想错了,呵呵