最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql實(shí)現(xiàn)向下遞歸與向上遞歸方式

 更新時(shí)間:2026年04月17日 10:04:47   作者:搬磚的夢先生  
本文介紹了FIND_IN_SET函數(shù)的使用,可以替代SQL的IN查詢多個(gè)節(jié)點(diǎn)數(shù)據(jù),也可通過=關(guān)聯(lián)查詢單個(gè)節(jié)點(diǎn),此外,還提到了向下和向上遞歸查詢的方法

1、表描述

FIND_IN_SET:類似sql的in查詢查詢多個(gè)節(jié)點(diǎn)的數(shù)據(jù),這個(gè)函數(shù)可以換成=號進(jìn)行關(guān)聯(lián),=關(guān)聯(lián)時(shí)只能查詢一個(gè)節(jié)點(diǎn)的數(shù)據(jù),

表名稱: T_table

名稱描述
code數(shù)據(jù)標(biāo)識
pCode數(shù)據(jù)父標(biāo)識

2、向下遞歸查詢

SELECT T3.*
-- 層級需要
-- ,T2.level_
FROM( 
	SELECT @code as _code, 
        (SELECT @code := GROUP_CONCAT(code) 
            FROM T_table 
            WHERE FIND_IN_SET(pCode, @code) 
        ) as T1 
        -- 層級需要
        -- ,@level := @level+1 as level_
    FROM T_table, 
		(SELECT @code := 'code1,code2,...'
				-- 層級需要
				-- ,@level := -1
		) T4
		WHERE @code IS NOT NULL 
) T2, T_table T3 
WHERE FIND_IN_SET(T3.code, T2._code) 
-- 不包含自身
-- AND !FIND_IN_SET(T3.code,'code1,code2,...')

3、向上遞歸查詢

SELECT T3.* 
-- 層級需要
-- ,T2.level_
FROM( 
	SELECT @code as _code, 
		(SELECT @code := GROUP_CONCAT(pCode) 
			FROM T_table 
			WHERE FIND_IN_SET(code,@code)
		) as T1
		-- 層級需要
        -- ,@level := @level+1 as level_
	FROM T_table, 
		(SELECT @code := 'code1,code2,...'
				-- 層級需要
				-- ,@level := -1
		) T4 
		WHERE @code IS NOT NULL 
	) T2, T_table T3
WHERE FIND_IN_SET(T3.code, T2._code) 
-- 不包含自身
-- AND !FIND_IN_SET(T3.code,'code1,code2,...')

4、總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • mysql innodb的重要組件匯總

    mysql innodb的重要組件匯總

    這篇文章主要介紹了mysql innodb的重要組件的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)MySQL,感興趣的朋友可以了解下
    2020-12-12
  • 一篇文章搞懂MySQL加鎖機(jī)制

    一篇文章搞懂MySQL加鎖機(jī)制

    線程安全就是多線程訪問時(shí),采用了加鎖機(jī)制,當(dāng)一個(gè)線程訪問該類的某個(gè)數(shù)據(jù)時(shí)進(jìn)行保護(hù),下面這篇文章主要給大家介紹了關(guān)于MySQL加鎖機(jī)制的相關(guān)資料,需要的朋友可以參考下
    2022-01-01
  • MySQL對于各種鎖的概念理解

    MySQL對于各種鎖的概念理解

    今天小編就為大家分享一篇關(guān)于MySQL對于各種鎖的概念理解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • MySQL的索引失效的原因?qū)嵗敖鉀Q方案

    MySQL的索引失效的原因?qū)嵗敖鉀Q方案

    這篇文章主要討論了MySQL索引失效的常見原因及其解決方案,它涵蓋了數(shù)據(jù)類型不匹配、隱式轉(zhuǎn)換、函數(shù)或表達(dá)式、范圍查詢、LIKE查詢、OR條件、全表掃描、索引選擇性低、覆蓋索引不足和統(tǒng)計(jì)信息不準(zhǔn)確等問題,感興趣的朋友一起看看吧
    2024-12-12
  • Mysql數(shù)據(jù)庫幻讀問題舉例詳解

    Mysql數(shù)據(jù)庫幻讀問題舉例詳解

    數(shù)據(jù)庫幻讀是數(shù)據(jù)庫并發(fā)事務(wù)控制中可能發(fā)生的一種現(xiàn)象,它屬于不可重復(fù)讀的一個(gè)特例,但關(guān)注點(diǎn)不同,這篇文章主要介紹了Mysql數(shù)據(jù)庫幻讀問題的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-10-10
  • Mysqlslap MySQL壓力測試工具 簡單教程

    Mysqlslap MySQL壓力測試工具 簡單教程

    Mysqlslap是從5.1.4版開始的一個(gè)MySQL官方提供的壓力測試工具。通過模擬多個(gè)并發(fā)客戶端訪問MySQL來執(zhí)行壓力測試,同時(shí)詳細(xì)的提供了“高負(fù)荷攻擊MySQL”的數(shù)據(jù)性能報(bào)告。并且能很好的對比多個(gè)存儲引擎在相同環(huán)境下的并發(fā)壓力性能差別
    2011-10-10
  • 52條SQL語句教你性能優(yōu)化

    52條SQL語句教你性能優(yōu)化

    性能不理想的系統(tǒng)中除了一部分是因?yàn)閼?yīng)用程序的負(fù)載確實(shí)超過了服務(wù)器的實(shí)際處理能力外,更多的是因?yàn)橄到y(tǒng)存在大量的SQL語句需要優(yōu)化,本文就介紹了52條優(yōu)化方法,感興趣的可以了解一下
    2021-05-05
  • SQL左連接和右連接原理及實(shí)例解析

    SQL左連接和右連接原理及實(shí)例解析

    這篇文章主要介紹了SQL左連接和右連接原理及實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-11-11
  • MySQL中NULL對索引的影響深入講解

    MySQL中NULL對索引的影響深入講解

    這篇文章主要給大家介紹了關(guān)于MySQL中NULL對索引的影響的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用MySQL具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Mysql?數(shù)據(jù)庫結(jié)構(gòu)及索引類型

    Mysql?數(shù)據(jù)庫結(jié)構(gòu)及索引類型

    這篇文章主要介紹了Mysql?數(shù)據(jù)庫結(jié)構(gòu)及索引類型,數(shù)據(jù)庫索引是?mysql?數(shù)據(jù)庫中重要的組成部分,是數(shù)據(jù)庫查詢數(shù)據(jù)速度提升的關(guān)鍵,本文將介紹數(shù)據(jù)庫索引的一些內(nèi)容,下文更多相關(guān)內(nèi)容,需要的小伙伴可以參考一下
    2022-05-05

最新評論

颍上县| 莱西市| 天等县| 瓦房店市| 合肥市| 营山县| 龙山县| 深水埗区| 邵阳县| 邛崃市| 金塔县| 大悟县| 民县| 衡南县| 华池县| 横山县| 顺昌县| 承德市| 陇川县| 称多县| 汉沽区| 咸阳市| 景东| 宽甸| 松原市| 定陶县| 池州市| 翁源县| 南雄市| 元谋县| 金川县| 林芝县| 大渡口区| 揭阳市| 体育| 麟游县| 九龙城区| 章丘市| 莒南县| 文昌市| 邵武市|