人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動態(tài)

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

發(fā)布日期:2022-02-08 19:47 | 文章來源:CSDN

本文使用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 tinner 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)文章希望大家以后多多支持本站!

美國服務(wù)器租用

版權(quán)聲明:本站文章來源標注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。

實時開通

自選配置、實時開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對1客戶咨詢顧問

在線
客服

在線客服:7*24小時在線

客服
熱線

400-630-3752
7*24小時客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部