ÎÒÓÐÁ½¸ö±í Ò»¸ö±íÊÇ dept Ò»¸ö±íʽuser
dept±í°üº¬×Ö¶Î id deptname superiorid(Éϼ¶²¿ÃÅid)
user±í°üº¬×Ö¶Î id username deptid
Èç¹ûÎÒÏë²éѯһ¸ö²¿ÃŵÄËùÓÐÈËÔ± ¸ÃÔõôдÕâÌõÓï¾äÄØ£¿£¿
×¢£ºÀýÈçÒ»¸ö²¿ÃÅ idΪ3£¬ËüµÄÏÂÃæ»¹ÓÐÁ½¸ö×Ó²¿ÃÅ£¬Èç¹ûÎÒÏë²éѯ3µÄËùÓÐÈËÔ±°üº¬ÏÂÊô×Ó²¿ÃŵÄÈËÔ±£¬ÔõôдÕâÌõÓï¾äÄØ£¿
BOM
Ê÷Ðͽṹ£¬Èç¹û¶à²ãµÄ»°£¬¶ÔÓÚ2000£¬Óú¯Êý
Èç¹û2005+£¬¿ÉÒÔÓú¯Êý»òÕߵݹéµÄCTE£¬Ó¦¸Ã¿ÉÒÔÕÒµ½¾«»ªÌù
SQL code:
²éѯָ¶¨½Úµã¼°ÆäËùÓÐ×Ó½Úµã»ò¸¸½Úµã
IF OBJECT_ID('tb') IS NOT NULL DROP TABLE tb
GO
CREATE TABLE tb(id VARCHAR(3),pid VARCHAR(3),[name] VARCHAR(10))
GO
INSERT INTO tb SELECT '001',NULL,'ºÓÄÏÊ¡'
UNION ALL SELECT '002','001','ÂåÑôÊÐ'
UNION ALL SELECT '003','001','ÐÂÏçÊÐ'
UNION ALL SELECT '004','002','èï´¨ÏØ'
UNION ALL SELECT '005','003','³¤Ô«ÏØ'
UNION ALL SELECT '006','002','ÃϽòÏØ'
UNION ALL SELECT '007','004','ÀäË®Ïç'
UNION ALL SELECT '008','004','½ÐºÓÏç'
UNION ALL SELECT '009','008','A´å'
UNION ALL SELECT '010','008','B´å'
GO
/*
1¡¢²éѯָ¶¨½Úµã¼°ÆäËùÓÐ×Ó½Úµã
--È磺ÒÑÖª èï´¨ÏØ
--µÃµ½½á¹û
id pid name
---- ---- ----------
004 002 èï´¨ÏØ
007 004 ÀäË®Ïç
008 004 ½ÐºÓÏç
009 008 A´å
010 008 B´å
*/
****************************²éѯ¿ªÊ¼******************************
--SQL2005 ʹÓÃCTE
DECLARE @ VARCHAR(10)
SET @='èï´¨ÏØ'
СµÜ£¬×î½üҪתÐÐÈ¥×öoracle¿ª·¢ÁË£¬ÓÉÓÚ´óѧ±Ïҵʱ£¬×ßÁ˸öÍä·£¬ÏÖÔÚºÜСÐÄ£¬ÎÊÏ£¬×öPL/SQLÓÐûÓÐǰ;£¿£¿£¿
µ±È»ÎÒ˵µÄÕâ¸öǰ;ÊÇÖ¸ ÒÔºóÒªÌø²Û£¬Êг¡¶ÔÕâÑùµÄÈ˲ŵÄÐèÇóÁ¿´ó²»´ó£¿£¿
3q ÄÇ¿´À´»¹Ö»ÄÜÏȽӴ ......