MySQL - 分組連線欄位函式GROUP_CONCAT的使用
一、語法
group_concat([DISTINCT] 要連線的欄位 [Order BY ASC/DESC 排序欄位] [Separator '分隔符'])
該函式返回來自同一個分組的指定欄位的非NULL值的連線起來字串。二、用法
準備表和資料如下:
1、以cid分組,把同組的sname欄位值列印在一行,逗號分隔(預設)
SELECT cid, GROUP_CONCAT(sname) from student group by cid;
注意,cid為1002中,sname為NULL的值沒有參與連線
2、以cid分組,把同組的sname欄位的值列印在一行,豎線分隔
SELECT cid, GROUP_CONCAT(sname separator '|') from student group by cid;
3、以cid分組,把同組的sname欄位值去重後列印在一行
SELECT cid, GROUP_CONCAT(distinct sname) from student group by cid;
4、以cid分組,把同組的sname欄位值排序後列印在一行
SELECT cid, GROUP_CONCAT(sname order by sname desc) from student group by cid;
三、補充
可以通過group_concat_max_len系統變數設定允許的最大長度
語法:SET [SESSION | GLOBAL] group_concat_max_len = unsigned_integer;
例如:SET GLOBAL group_concat_max_len = 1024;
相關文章
- Oracle - 分組連線欄位函式WMSYS.WM_CONCAT的使用Oracle函式
- Mysql中常用函式 分組,連線查詢MySql函式
- mysql group_concat 實現把分組欄位寫成一行的方法MySql
- MYSQL的GROUP_CONCAT函式MySql函式
- mysql與oracle的分組函式MySqlOracle函式
- MySQL GROUP BY分組取欄位最大值MySql
- MySQL字串連線函式MySql字串函式
- mysql函式之——GROUP_CONCAT(轉)MySql函式
- SqlServer根據特定欄位分組後,對需要欄位進行分組拼接SQLServer
- Mysql替換欄位中指定字元(replace 函式)MySql字元函式
- MySQL資料庫中的分組函式ROLLUPMySql資料庫函式
- [PY3]——根據某個特定的欄位來分組迭代訪問一個欄位或序列?/ itertools.groupby( )函式函式
- pandas 分組合並欄位(qbit)
- MySQL之集合函式與分組查詢MySql函式
- mysql資料庫如何使用concat函式連線字串MySql資料庫函式字串
- 檢視oracle 欄位的資料佔用的位元組數函式Oracle函式
- Oracle的wm_concat和MySQL的group_concat函式OracleMySql函式
- mysql GROUP_CONCAT(test_score) 很好的拼字元的函式MySql字元函式
- Oracle 分組彙總統計函式的使用Oracle函式
- list集合根據某欄位分組
- MySQL8.0-分組函式ROLLUP的基本用法(GROUPING)MySql函式
- SQL函式Group_concat用法SQL函式
- 使用CLR函式壓縮(Gzip)ntext型別欄位函式型別
- MySql之json_extract函式處理json欄位MySqlJSON函式
- 6、Oracle中的分組函式Oracle函式
- MySQL全面瓦解10:分組查詢和聚合函式MySql函式
- SQL 部分函式的使用,子查詢,group by,虛擬欄位,case……SQL函式
- pandas dataframe 時間欄位 diff 函式函式
- MySQL中JSON欄位的使用技巧MySqlJSON
- MySQL 中 JSON 欄位的使用技巧MySqlJSON
- v$session與v$sql連線現在使用哪個欄位?SessionSQL
- 千分位分隔函式函式
- MybatisPlus經典示例:使用Wrapper查詢指定欄位並新增欄位函式處理MyBatisAPP函式
- mysql-分組查詢-子查詢-連線查詢-組合查詢MySql
- 使用mysql的長連線MySql
- 分組查詢連線號段
- 更改MySql表和欄位區分大小寫MySql
- MySQL的GROUP_CONCAT函式輕鬆解決多表聯查的聚合問題MySql函式