多個值合并展示
現在我們有如圖一到圖二的需求


怎么做?
如下sql:
SELECT id,GROUP_CONCAT(DISTINCT str) as str from test GROUP BY id
相關知識點
GROUP_CONCAT
GROUP_CONCAT([DISTINCT] 要連接的字段 [Order BY ASC/DESC 排序字段] [Separator ‘分隔符'])
多個值拆分展示
現在我們的需求和第一個例子相反
由圖三

到圖四

這里就稍微復雜了,首先對于str提前做了如圖的處理,即字符+','的一對一對應處理,其次,因為mysql沒有序列功能,所以我們需要提前準備一張序列表,最大id應該大于單個字段內最大項數

具體sql如下:
SELECT t.id,SUBSTRING_INDEX(SUBSTRING_INDEX(str,',',s.id),',',-1) as str
from test2 t
join sequence s on s.id(LENGTH(t.str)/2+1)
ORDER BY t.id
相關知識點
SUBSTRING_INDEX(str,delim,count)
SUBSTRING_INDEX(要處理的字符串,分隔符,計數)
如果count是正數,那么就是從左往右數,第N個分隔符的左邊的全部內容
如果是負數,那么就是從右邊開始數,第N個分隔符右邊的所有內容
總結
到此這篇關于mysql單字段多值分割和合并處理的文章就介紹到這了,更多相關mysql單字段多值分割和合并內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- mysql查詢的時候給字段賦默認值操作
- MySQL命令行中給表添加一個字段(字段名、是否為空、默認值)
- MySQL表字段設置默認值(圖文教程及注意細節)
- mysql 多個字段拼接的實例詳解
- MySQL 8.0新特性之隱藏字段的深入講解
- 淺談Mysql哪些字段適合建立索引
- mysql update case 更新字段值不固定的操作
- mysql修改記錄時update操作 字段=字段+字符串
- 關于Mysql update修改多個字段and的語法問題詳析
- MySQL 字段默認值該如何設置