午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Mysql查詢(xún)語(yǔ)句如何實(shí)現(xiàn)無(wú)限層次父子關(guān)系查詢(xún)

瀏覽:10日期:2023-06-23 19:40:37
目錄一、前言二、相關(guān)語(yǔ)法函數(shù)介紹三、具體實(shí)現(xiàn)查詢(xún)父級(jí)為 2 的下級(jí) 無(wú)限級(jí)查詢(xún)四、效率問(wèn)題EXPLAN 相關(guān)參數(shù)總結(jié)一、前言

單表存儲(chǔ)上下級(jí)關(guān)系,使用mysql 內(nèi)置函數(shù)循環(huán)遞歸查出來(lái)

二、相關(guān)語(yǔ)法函數(shù)介紹@

@是用戶變量,@@是系統(tǒng)變量。

:=

不只在set和update時(shí)時(shí)賦值的作用,在select也是賦值的作用。

group_concat()

將group by產(chǎn)生的同一個(gè)分組中的值連接起來(lái),返回一個(gè)字符串結(jié)果。

FIND_IN_SET()

查詢(xún)字段(strlist)中包含(str)的結(jié)果,返回結(jié)果為null或記錄

三、具體實(shí)現(xiàn)

創(chuàng)建表

查詢(xún)父級(jí)為 2 的下級(jí) 無(wú)限級(jí)查詢(xún)SELECT@ids AS _ids,( SELECT @ids := GROUP_CONCAT( descendant ) FROM relation WHERE FIND_IN_SET( ancestor, @ids ) ) AS cids,@l := @l + 1 AS LEVEL FROMrelation,( SELECT @ids := 2, @l := 0 ) b WHERE@ids IS NOT NULL

列表化

SELECTdescendant.LEVEL,DATA.* FROM(SELECT@ids AS _ids,( SELECT @ids := GROUP_CONCAT( descendant ) FROM relation WHERE FIND_IN_SET( ancestor, @ids ) ) AS cids,@l := @l + 1 AS LEVEL FROMrelation,( SELECT @ids := 2, @l := 0 ) b WHERE@ids IS NOT NULL ) descendant,sys_dept_relation DATA WHEREFIND_IN_SET( DATA.descendant, descendant._ids ) ORDER BYLEVEL,DATA.descendant

查詢(xún)ID為 8 的上級(jí) 無(wú)限級(jí)查詢(xún)SELECT@id AS _id,( SELECT @id := ancestor FROM relation WHERE descendant = @id ) AS _pid,@l := @l + 1 AS LEVEL FROMrelation,( SELECT @id := 8, @l := 0 ) b WHERE@id > 0

四、效率問(wèn)題

我目前測(cè)試表有8千多數(shù)據(jù)量

EXPLAN 相關(guān)參數(shù)

Select_type:

PRIMARY:查詢(xún)中最外層的SELECT(如兩表做UNION或者存在子查詢(xún)的外層的表操作為PRIMARY,內(nèi)層的操作為UNION)DERIVED:被驅(qū)動(dòng)的SELECT子查詢(xún)(子查詢(xún)位于FROM子句)UNCACHEABLE SUBQUERY:一個(gè)子查詢(xún)的結(jié)果不能被緩存,必須重新評(píng)估外鏈接的第一行

Type:

NULL: MySQL在優(yōu)化過(guò)程中分解語(yǔ)句,執(zhí)行時(shí)甚至不用訪問(wèn)表或索引,例如從一個(gè)索引列里選取最小值可以通過(guò)單獨(dú)索引查找完成。index: Full Index Scan,index與ALL區(qū)別為index類(lèi)型只遍歷索引樹(shù)System:system是const類(lèi)型的特例,當(dāng)查詢(xún)的表只有一行的情況下,使用system總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: MySQL 數(shù)據(jù)庫(kù)
相關(guān)文章:
主站蜘蛛池模板: 国产3级在线观看 | www.天堂在线 | 亚洲一区在线免费观看 | 免费久久视频 | 国产精品羞羞答答 | 欧洲精品视频在线 | 免费国产黄色片 | 一级片成人 | 中文天堂在线播放 | 日韩精品在线一区二区三区 | 一区在线看 | 国产精品国产一区二区三区四区 | 超碰中文字幕在线 | 男人的天堂官网 | 91精品国产乱码久久久 | 久久精品3 | 黄色a大片| 精品国产乱 | 国产精品区二区三区日本 | 日韩成人免费视频 | 一区二区三区精品在线观看 | 欧美片| 一区视频 | 国产精品一区av | 九九热国产视频 | 成人综合在线观看 | 精品久久中文 | 久久精品一区二区三区四区 | 日本精品视频一区 | 日本午夜影院 | 一级欧美日韩 | 中文字幕亚洲欧美日韩在线不卡 | 日本成人一级片 | 成人午夜精品福利免费 | 手机免费黄色网址 | 日韩精品一区二区三区四区五区 | 国产毛片一级 | 久久视频在线 | 日韩在线三区 | 麻豆成人入口 | 国产91在线免费观看 |