mysql中的多行查詢結果合併成一個
SELECT GROUP_CONCAT(md.data1) FROM DATA md,contacts cc WHERE md.conskey=cc.id AND md.mimetype_id= 5 AND md.user_id=17:
利用函式:group_concat(),實現一個ID對應多個名稱時,原本為多行資料,把名稱合併成一行,如|1 | 10,20,20|
本文通過例項介紹了MySQL中的group_concat函式的使用方法,比如select group_concat(name) 。
MySQL中group_concat函式
完整的語法如下:
group_concat([DISTINCT] 要連線的欄位 [Order BY ASC/DESC 排序欄位] [Separator '分隔符'])
基本查詢
mysql> select * from aa;
+------+------+
| id| name |
+------+------+
|1 | 10|
|1 | 20|
|1 | 20|
|2 | 20|
|3 | 200 |
|3 | 500 |
+------+------+
6 rows in set (0.00 sec)
以id分組,把name欄位的值列印在一行,逗號分隔(預設)
mysql> select id,group_concat(name) from aa group by id;
+------+--------------------+
| id| group_concat(name) |
+------+--------------------+
|1 | 10,20,20|
|2 | 20 |
|3 | 200,500|
+------+--------------------+
3 rows in set (0.00 sec)
以id分組,把name欄位的值列印在一行,分號分隔
mysql> select id,group_concat(name separator ';') from aa group by id;
+------+----------------------------------+
| id| group_concat(name separator ';') |
+------+----------------------------------+
|1 | 10;20;20 |
|2 | 20|
|3 | 200;500 |
+------+----------------------------------+
3 rows in set (0.00 sec)
以id分組,把去冗餘的name欄位的值列印在一行,
逗號分隔
mysql> select id,group_concat(distinct name) from aa group by id;
+------+-----------------------------+
| id| group_concat(distinct name) |
+------+-----------------------------+
|1 | 10,20|
|2 | 20 |
|3 | 200,500 |
+------+-----------------------------+
3 rows in set (0.00 sec)
以id分組,把name欄位的值列印在一行,逗號分隔,以name排倒序
mysql> select id,group_concat(name order by name desc) from aa group by id;
+------+---------------------------------------+
| id| group_concat(name order by name desc) |
+------+---------------------------------------+
|1 | 20,20,10 |
|2 | 20|
|3 | 500,200|
+------+---------------------------------------+
3 rows in set (0.00 sec)
利用函式:group_concat(),實現一個ID對應多個名稱時,原本為多行資料,把名稱合併成一行,如|1 | 10,20,20|
本文通過例項介紹了MySQL中的group_concat函式的使用方法,比如select group_concat(name) 。
MySQL中group_concat函式
完整的語法如下:
group_concat([DISTINCT] 要連線的欄位 [Order BY ASC/DESC 排序欄位] [Separator '分隔符'])
基本查詢
mysql> select * from aa;
+------+------+
| id| name |
+------+------+
|1 | 10|
|1 | 20|
|1 | 20|
|2 | 20|
|3 | 200 |
|3 | 500 |
+------+------+
6 rows in set (0.00 sec)
以id分組,把name欄位的值列印在一行,逗號分隔(預設)
mysql> select id,group_concat(name) from aa group by id;
+------+--------------------+
| id| group_concat(name) |
+------+--------------------+
|1 | 10,20,20|
|2 | 20 |
|3 | 200,500|
+------+--------------------+
3 rows in set (0.00 sec)
以id分組,把name欄位的值列印在一行,分號分隔
mysql> select id,group_concat(name separator ';') from aa group by id;
+------+----------------------------------+
| id| group_concat(name separator ';') |
+------+----------------------------------+
|1 | 10;20;20 |
|2 | 20|
|3 | 200;500 |
+------+----------------------------------+
3 rows in set (0.00 sec)
以id分組,把去冗餘的name欄位的值列印在一行,
逗號分隔
mysql> select id,group_concat(distinct name) from aa group by id;
+------+-----------------------------+
| id| group_concat(distinct name) |
+------+-----------------------------+
|1 | 10,20|
|2 | 20 |
|3 | 200,500 |
+------+-----------------------------+
3 rows in set (0.00 sec)
以id分組,把name欄位的值列印在一行,逗號分隔,以name排倒序
mysql> select id,group_concat(name order by name desc) from aa group by id;
+------+---------------------------------------+
| id| group_concat(name order by name desc) |
+------+---------------------------------------+
|1 | 20,20,10 |
|2 | 20|
|3 | 500,200|
+------+---------------------------------------+
3 rows in set (0.00 sec)
相關文章
- MySQL 合併查詢union 查詢出的行合併到一個表中MySql
- MySQL 合併查詢join 查詢出的不同列合併到一個表中MySql
- orcale 中查詢多行 後合併到一行顯示
- Oracle 合併行/多行合併成一行Oracle
- 動態sql查詢結果多行的處理情況SQL
- mysql查詢結果多列拼接查詢MySql
- mysql匯出查詢結果MySql
- Oracle中把一個查詢結果插入到一張表中Oracle
- [Mysql 查詢語句]——對查詢結果進一步的操作MySql
- 【MySQL】MySQL如何合併多行資料,行轉列,group_concat 多行合併MySql
- MySQL自聯合查詢的一個例子MySql
- 利用MySQL的一個特性實現MySQL查詢結果的分頁顯示(轉)MySql
- MySQL查詢結果匯出方式總結MySql
- 合併查詢
- MySQL GROUP_CONCAT函式 將多行資料合併成一行MySql函式
- xsl中,對xml文件查詢的結果再次查詢XML
- MySQL 查詢結果取交集的實現方法MySql
- 為 MySQL 的查詢結果新增排名欄位MySql
- 返回部分結果後,才報單行子查詢返回多行。
- 有關於三個表格結結合查詢的MYSQL語法MySql
- SQL Server對組合查詢結果排序方法SQLServer排序
- MySQL 將查詢結果匯出到檔案MySql
- mysql將多行資料合併或按組合並MySql
- Oracle Database 12c查詢最佳化器的缺陷-檢視合併會造成查詢結果不準確OracleDatabase
- 多個commit合併成一個MIT
- DBeaver 匯出多個查詢結果集
- mysql求交集:UNION ALL合併查詢,inner join內連線查詢,IN/EXISTS子查詢MySql
- MySQL pager和nopager命令--不顯示查詢結果MySql
- mysql 從一個表中查詢,插入到另一個表中MySql
- 利用shell中awk和xargs以及sed將多行多列文字中某一列合併成一行
- SQL查詢 多列合併成一行用逗號隔開stuff()SQL
- navicat 匯出查詢結果
- mysql 兩個表結果合拼到一個表,用常量區別不同的表MySql
- 隨機高併發查詢結果一致性設計實踐隨機
- [踩坑]laravel 獲取一個model查詢結果中不存在的屬性返回NULLLaravelNull
- 使用查詢結果更新表的方法
- oracle 查詢結果的各種格式Oracle
- SQL語句將查詢結果插入到另一張表中SQL