佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > Mysql8.0遞歸查詢的簡單用法示例

Mysql8.0遞歸查詢的簡單用法示例

熱門標(biāo)簽:鐵路電話系統(tǒng) AI電銷 Linux服務(wù)器 地方門戶網(wǎng)站 網(wǎng)站排名優(yōu)化 百度競價排名 呼叫中心市場需求 服務(wù)外包

前言

本文使用Mysql8.0的特新實現(xiàn)遞歸查詢,文中給出了詳細的實例代碼,下面話不多說了,來一起看看詳細的介紹吧

Mysql8.0遞歸查詢用法

表數(shù)據(jù)如下

+--------+----------+------------+
| cat_id | name     | parent_cid |
+--------+----------+------------+
|     12 | 美妝     |          0 |
|      4 | 服裝     |          0 |
|      5 | 女裝     |          4 |
|      6 | 男裝     |          4 |
|      7 | 童裝     |          4 |
|     19 | 美容美體 |         12 |
|     18 | 彩妝     |         12 |
|     13 | 護膚     |         12 |
|     15 | 護膚套裝 |         13 |
|     40 | 防曬     |         13 |
|     39 | 卸妝     |         13 |
|     38 | 潤唇膏   |         13 |
|     17 | 乳液面霜 |         13 |
|     16 | 面膜     |         13 |
|     14 | 化妝水   |         13 |
+--------+----------+------------+

1. 我們需要查詢出"服裝"分類下的所有子分類

with recursive type_cte as (
    select *  from t_category  where cat_id = 4
    union all
    select t.* from t_category t
                        inner join type_cte type_cte2 on t.parent_cid = type_cte2.cat_id
)
select
    cat_id, name, parent_cid
from type_cte

+--------+------+------------+
| cat_id | name | parent_cid |
+--------+------+------------+
|      4 | 服裝 |          0 |
|      5 | 女裝 |          4 |
|      6 | 男裝 |          4 |
|      7 | 童裝 |          4 |
+--------+------+------------+

2. 查詢出所有“美妝”分類下的所有子分類,并且分類名稱帶上上級分類的名稱

with recursive type_cte as (
    select cat_id,name,parent_cid  from t_category  where cat_id = 12
    union all
    select t.cat_id,concat(type_cte2.name,'>',t.name),t.parent_cid 
    from t_category t
        inner join type_cte type_cte2 on t.parent_cid = type_cte2.cat_id
)
select
    cat_id, name, parent_cid
from type_cte;

+--------+------------------------+------------+
| cat_id | name                   | parent_cid |
+--------+------------------------+------------+
|     12 | 美妝                   |          0 |
|     13 | 美妝>護膚              |         12 |
|     18 | 美妝>彩妝              |         12 |
|     19 | 美妝>美容美體          |         12 |
|     14 | 美妝>護膚>化妝水       |         13 |
|     15 | 美妝>護膚>護膚套裝     |         13 |
|     16 | 美妝>護膚>面膜         |         13 |
|     17 | 美妝>護膚>乳液面霜     |         13 |
|     35 | 美妝>護膚>潔面         |         13 |
|     36 | 美妝>護膚>精華         |         13 |
|     37 | 美妝>護膚>眼霜         |         13 |
|     38 | 美妝>護膚>潤唇膏       |         13 |
|     39 | 美妝>護膚>卸妝         |         13 |
|     40 | 美妝>護膚>防曬         |         13 |
+--------+------------------------+------------+

3. 查詢分類的所有父級分類

根據(jù)第二個問題的sql做一下調(diào)整即可

with recursive type_cte as (
    select cat_id,name,parent_cid  from t_category  where cat_id = 40
    union all
    select t.cat_id,concat(type_cte2.name,'>',t.name),t.parent_cid
    from t_category t
             inner join type_cte type_cte2 on t.cat_id = type_cte2.parent_cid
)
select
    cat_id, name, parent_cid
from type_cte;

+--------+----------------+------------+
| cat_id | name           | parent_cid |
+--------+----------------+------------+
|     40 | 防曬           |         13 |
|     13 | 防曬>護膚      |         12 |
|     12 | 防曬>護膚>美妝 |          0 |
+--------+----------------+------------+

總結(jié)

到此這篇關(guān)于Mysql8.0遞歸查詢的文章就介紹到這了,更多相關(guān)Mysql8.0遞歸查詢內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • MySQL遞歸查詢樹狀表的子節(jié)點、父節(jié)點具體實現(xiàn)
  • Mysql樹形遞歸查詢的實現(xiàn)方法
  • SQL如何實現(xiàn)MYSQL的遞歸查詢
  • MySQL通過自定義函數(shù)實現(xiàn)遞歸查詢父級ID或者子級ID
  • MySql8 WITH RECURSIVE遞歸查詢父子集的方法

標(biāo)簽:湘潭 蘭州 仙桃 衡水 銅川 黃山 崇左 湖南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Mysql8.0遞歸查詢的簡單用法示例》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    昌宁县| 博罗县| 蛟河市| 宾川县| 汉源县| 石家庄市| 芷江| 南部县| 景东| 来凤县| 新密市| 洛阳市| 通城县| 工布江达县| 麻栗坡县| 沁水县| 靖州| 西林县| 镇巴县| 崇义县| 广宗县| 灌南县| 大丰市| 开封市| 桓台县| 安陆市| 来宾市| 西丰县| 塘沽区| 上思县| 丹东市| 福清市| 金川县| 丹阳市| 岱山县| 武威市| 海宁市| 凤城市| 武强县| 古交市| 沁源县|