您现在的位置是:主页 > news > 怎么做谷歌这样的网站/google app

怎么做谷歌这样的网站/google app

admin2025/5/8 2:04:35news

简介怎么做谷歌这样的网站,google app,做一个租房卖房的网站怎么做,软件开发是学什么ORACLE支持常規的用CTE遞歸的方式實現遞歸查詢,也有自己特有的查詢方式,ORACLE文檔中叫層次數據查詢。這裏通過一個簡單的样例來介紹這兩種查詢方式。 數據準備: CREATE TABLE TBL_TEST( ID NUMBER, NAME VARCHAR2(100), PID NUMBER); /BE…

怎么做谷歌这样的网站,google app,做一个租房卖房的网站怎么做,软件开发是学什么ORACLE支持常規的用CTE遞歸的方式實現遞歸查詢,也有自己特有的查詢方式,ORACLE文檔中叫層次數據查詢。這裏通過一個簡單的样例來介紹這兩種查詢方式。 數據準備: CREATE TABLE TBL_TEST( ID NUMBER, NAME VARCHAR2(100), PID NUMBER); /BE…

ORACLE支持常規的用CTE遞歸的方式實現遞歸查詢,也有自己特有的查詢方式,ORACLE文檔中叫層次數據查詢。

這裏通過一個簡單的样例來介紹這兩種查詢方式。

數據準備:

CREATE TABLE TBL_TEST( ID NUMBER,  NAME VARCHAR2(100),  PID NUMBER); 
/BEGIN
INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('1','10','0');
INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('2','11','1');
INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('3','20','0');
INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('4','12','1');
INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('5','121','2');
END;	/


需求:ID = 1結點下全部的子結點(從表中數據能够看出是1、2、4、5)


ORACLE特有的遞歸查詢方式:

SELECT * FROM TBL_Test
START WITH ID = 1           -- 开始行(start row)
CONNECT BY PRIOR ID = pid;  -- prior代表上一行(parent row)
CTE方式:

WITH cte(ID,NAME,PID) AS
(SELECT ID,NAME,PIDFROM TBL_TESTWHERE ID = 1
UNION ALLSELECT b.ID,b.NAME,b.PIDFROM cte aINNER JOIN TBL_TEST b ON a.id = b.PID
)
SELECT * FROM cte;
以上兩種方法均查出了正確的結果。


上面第一種方法的Start With 相當於第二種方法的UNION ALL上面的部分,CONNECT BY 則相當於UNION ALL以下的部分。

CTE方法具有可移植性,SQL SERVER和DB2也支持。


關於CTE方法實現遞歸的很多其它實例。還能够看以下兩遍文章:

SQL遞歸查詢實戰

遞歸查詢初體驗


转载于:https://www.cnblogs.com/gccbuaa/p/6944349.html