欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

concat函数,concat_ws函数,concat_group函数之间的区别

程序员文章站 2022-06-17 21:12:41
直接上干货:– 建表操作:-- 建表CREATE table 成绩表1(学号 VARCHAR(10),科目 VARCHAR(10),成绩 INTEGER)– 插入数据:INSERT into `成绩表` values -- 插入数据('001','计算机',99),('003','数学',99),('001','数学',99),('001','化学',88),('002','英语',96),('003','语文',76);SELECT * from 成绩表; -- 预览...

直接上干货:

– 建表操作:

-- 建表
CREATE table 成绩表1(
学号 VARCHAR(10),
科目 VARCHAR(10),
成绩 INTEGER
)

– 插入数据:

INSERT into `成绩表` values -- 插入数据
('001','计算机',99),
('003','数学',99),
('001','数学',99),
('001','化学',88),
('002','英语',96),
('003','语文',76);

SELECT * from 成绩表; -- 预览数据

concat函数,concat_ws函数,concat_group函数之间的区别

cancat用法

# cancat用法:
SELECT CONCAT(`学号`,'-',科目,',',成绩) as tempt from `成绩表`;

concat函数,concat_ws函数,concat_group函数之间的区别

# cancat用法:
SELECT CONCAT(`学号`,'-','科目',',',`成绩`) as tempt from `成绩表`;

concat函数,concat_ws函数,concat_group函数之间的区别

CONCAT_WS用法

# CONCAT_WS用法:
SELECT CONCAT_WS(',',`学号`,`科目`,NULL,`成绩`) as temp FROM `成绩表`;

concat函数,concat_ws函数,concat_group函数之间的区别

GROUP_CONCAT() 用法

# GROUP_CONCAT() 用法:

-- 1.单列多行合并单行单列展示

SELECT `学号`,GROUP_CONCAT(`科目`) as q ,GROUP_CONCAT(`成绩`ORDER BY `成绩` desc) p from `成绩表` group by `学号`;

concat函数,concat_ws函数,concat_group函数之间的区别

-- 2.多列拼接,多列多行值合并成单行单列显示
SELECT GROUP_CONCAT(`学号`,`科目`) as groupby from `成绩表`;

concat函数,concat_ws函数,concat_group函数之间的区别

SELECT   `学号`
		,GROUP_CONCAT(`科目`,`成绩`) as temt  
from `成绩表` group by `学号`;

concat函数,concat_ws函数,concat_group函数之间的区别
说明:测试工具mysql

1.concat函数在连接字符串的时候,只要其中一个是NULL,那么将返回NULL
2.concat_ws函数在连接字符串的时候,只要有一个字符串不是NULL,就不会返回NULL。concat_ws函数需要指定分隔符。

本文地址:https://blog.csdn.net/weixin_44976611/article/details/107316531