一句sql實現mysql遞歸查詢 mysql怎么實現遞歸查詢?
mysql怎么實現遞歸查詢?MySQL的反擊:如何進行遞歸分層查詢?最近,我們正在做一個從Oracle數據庫到MySQL數據庫的遷移。我們遇到了這樣的問題。在Oracle中,我們知道有一個分層查詢。通
mysql怎么實現遞歸查詢?
MySQL的反擊:如何進行遞歸分層查詢?最近,我們正在做一個從Oracle數據庫到MySQL數據庫的遷移。我們遇到了這樣的問題。在Oracle中,我們知道有一個分層查詢。通過connectby,我們可以方便地檢查所有當前節點下的所有子節點。但是,在當前版本的MySQL中沒有相應的函數
!換句話說,如果你想用Mysql實現遞歸查詢,你根本做不到
!但是經過幾天的努力,我終于為MySQL和其他SQL找到了一個合理的解決方案。方案一出,秋風掃落葉,掃遍整個刀層~~~所到之處,所有的問題都能輕松解決,使所有的問題都不再是問題,它們成了我功用的炮灰。
mysql怎么實現遞歸查詢數據?
mysql> create table treeNodes->(-> id int primary key,-> nodename varchar(20),-> pid int->)Query OK,0行受影響(0.09秒)mysql> select*from treeNodes-------------------------| id | nodename | pid |---------|
1 | A | 0 | |
2 | B | 1 | | 3 | C | 1 |
4 | D | 2 | 5|2 | 2 | | | | | | | | | | | | | | |
15 | O | 12 | |
16 | P | 15 | |
17 | Q | 15 | |---------------17行(0.00)秒)
mysql中如何實現遞歸,不要采用自己寫的函數,也不要用存儲過程,就單純的sql可以搞定么?
withaas
(選擇*fromtable1whereparentid=0
unionall
選擇B.*froma,table1b其中a.id=b. parentid)
選擇*froma
帶withas的遞歸