Re: [SQL ] 請問如何找出母節點

看板Database (資料庫)作者 (多想兩分鐘 = =")時間18年前 (2007/07/05 23:18), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串4/4 (看更多)
※ 引述《rosemary (迷迭香)》之銘言: : 我有一個資料表叫做products如下 : 是為了展現樹狀結構,樹的層級是動態的,不一定有幾層。 : 請問要怎麼下SQL語法,給定nodID,找出所有的母節點monID : 例如;給nodID=12 (2B鉛筆), : 要怎麼找出 (1)文具-(4)鉛筆-(12)2B鉛筆呢? : (從後面 12-4-1找也可以 ^^) : 要用遞迴嗎?那這個例子SQL的遞迴語法怎麼寫呢? : 我是用MS SQL 2005的....謝謝大家 ^^ : products : ======================== : nodID monID nodName : 0 -1 產品 : 1 0 文具 : 2 0 食物 : 3 0 飾品 : 4 1 鉛筆 : 5 1 筆記本 : 6 2 餅乾 : 7 2 水果 : 8 3 髮圈 : 9 3 耳環 : 10 3 太陽眼鏡 : 11 4 自動鉛筆 : 12 4 2B鉛筆 : 產品-文具-鉛筆 -自動鉛筆... : -2B鉛筆 : -筆記本 : 食物-餅乾 : -水果 : 飾品-髮圈 : -耳環 : -太陽眼鏡 在 php板看到一個文章連結 http://dev.mysql.com/tech-resources/articles/hierarchical-data.html 雖然不符合需求(動態階層),但覺得有從這篇文章得到一點啟發…… WHERE 比對的條件是橫向的列,如果不夠那就 SELF JOIN擴充欄位, 這仍然是不熟的地方 orz.. 像上上上....篇找共同值的的問題,是有想到擴充欄位, 但卡在分支如果不固定(甲會對到A.B.C...的話)又要動態 JOIN....傷腦筋 orz -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.217.69.56
文章代碼(AID): #16ZGl0LH (Database)
文章代碼(AID): #16ZGl0LH (Database)