第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何在MySQL中進(jìn)行遞歸選擇查詢?

如何在MySQL中進(jìn)行遞歸選擇查詢?

MYYA 2019-06-18 11:13:24
如何在MySQL中進(jìn)行遞歸選擇查詢?我有一個(gè)下表:col1 | col2 | col3-----+------+-------1    | a    | 55    | d    | 33    | k    | 76    | o    | 22    | 0    | 8如果用戶搜索“1”,程序?qū)⒉榭碿ol1中有“1”的值。col3“5”,則程序?qū)⒗^續(xù)在col1它會(huì)有“3”col3等等。所以它會(huì)打印出來:1   | a   | 55   | d   | 33   | k   | 7如果用戶搜索“6”,它將打印出:6   | o   | 22   | 0   | 8如何構(gòu)建一個(gè)SELECT查詢來做這個(gè)嗎?
查看完整描述

3 回答

?
波斯汪

TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超4個(gè)贊

編輯

@leftclickben提到的解決方案也是有效的。我們也可以使用相同的存儲(chǔ)過程。

CREATE PROCEDURE get_tree(IN id int)
 BEGIN
 DECLARE child_id int;
 DECLARE prev_id int;
 SET prev_id = id;
 SET child_id=0;
 SELECT col3 into child_id 
 FROM table1 WHERE col1=id ;
 create TEMPORARY  table IF NOT EXISTS temp_table as (select * from table1 where 1=0);
 truncate table temp_table;
 WHILE child_id <> 0 DO   insert into temp_table select * from table1 WHERE col1=prev_id;
   SET prev_id = child_id;
   SET child_id=0;
   SELECT col3 into child_id   FROM TABLE1 WHERE col1=prev_id;
 END WHILE;
 select * from temp_table;
 END //

我們使用臨時(shí)表來存儲(chǔ)輸出的結(jié)果,而由于臨時(shí)表是基于會(huì)話的,所以輸出數(shù)據(jù)不正確將不會(huì)出現(xiàn)任何問題。

SQL FIDDLE Demo 


查看完整回答
反對(duì) 回復(fù) 2019-06-18
?
至尊寶的傳說

TA貢獻(xiàn)1789條經(jīng)驗(yàn) 獲得超10個(gè)贊

Leftclickben的答案對(duì)我有效,但我想要一條從給定節(jié)點(diǎn)到樹根的路徑,而這些路徑似乎是相反的,沿著樹向下。所以,為了清晰起見,我不得不翻轉(zhuǎn)一些字段并重新命名,這對(duì)我很有用,以防這也是其他人想要的-


item | parent

-------------

1    | null

2    | 1

3    | 1

4    | 2

5    | 4

6    | 3


select t.item_id as item_id, @pv:=t.parent as parent

from (select * from item_tree order by item_id desc) t

join

(select @pv:=6)tmp

where t.item_id=@pv;

給予:


item | parent

-------------

6    | 3

3    | 1

1    | null


查看完整回答
反對(duì) 回復(fù) 2019-06-18
  • 3 回答
  • 0 關(guān)注
  • 717 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)