Mysql 取用逗号分隔的字串的子串的方法:SUBSTRING_INDEX
生活随笔
收集整理的這篇文章主要介紹了
Mysql 取用逗号分隔的字串的子串的方法:SUBSTRING_INDEX
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。
有一張部門表:appbricks_department ,有 id 字段和?rank_tree 字段。
rank_tree:記錄的是當前部門的所有父級部門的 id , 逐級拼接,用逗號分隔,直到本級部門id。
如:A院 - B中心 - C科 - D室 ,則D室的 rank_tree 值為:A的id ,??B的id ,?C的id ,D的id 。
?
需求:根據當前部門 id ,查對應部門層級中第 2 級部門的名稱 。
1. 先查到 rank_tree:
2. 根據 rank_tree 取部門第2級的部門id :
取到前2級部門的id字串: SUBSTRING_INDEX(ad.rank_tree, ',', 2) 如:054234545F80B4844A90B,DA1E528C02C643546DBC5ECC再取這個字串逗號分隔的第2位,等于倒過來取的第1位: SUBSTRING_INDEX(SUBSTRING_INDEX(ad.rank_tree, ',', 2), ',', -1)) 得到最終要的id:DA1E528C02C643546DBC5ECC?
在mysql中提供了一些字符串操作的函數,其中SUBSTRING_INDEX(str, delim, count)
str: 要處理的字符串
delim: 分割符
count: 計數 如果為正數,則從左開始數,如果為負數,則從右開始數
3.實現業務查詢:
?
?
總結
以上是生活随笔為你收集整理的Mysql 取用逗号分隔的字串的子串的方法:SUBSTRING_INDEX的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: webshell下执行CMD的小技巧
- 下一篇: 分布式系统中的进程标识