Mysql功能函数

1.mysql拼接字符串

1.CONCAT()

最常用的字符串拼接方法,但遇到拼接中的字符串出现null的情况会返回null
        语法:CONCAT(string1,string2)
       例子:SELECT CONCAT(s_name,s_sex) FROM student
2.CONCAT_WS()

比CONCAT的优点,多了个分隔符功能,如果某个字符串为null,会忽略null,并返回其他字符串的值
       语法:CONCAT_WS(separator,str1,str2,…)

例子:SELECT CONCAT_WS('--',str1,str2) FROM student

效果:str1--str2
3.GROUP_CONCAT()

连接字段,多个值显示为一行

语法 :group_concat( [DISTINCT] 连接的字段 [Order BY 排序字段 ASC/DESC] [Separator ‘分隔符’] )连接的可以是多个字段,也可以对连接字段进行排序
       例子:mysql > SELECT GROUP_CONCAT(s_id) FROM student

效果:1,2,3,4 

4.窗口函数

引用 https://blog.csdn.net/weixin_39010770/article/details/87862407

  • 序号函数:row_number() / rank() / dense_rank()

  1.         ROW_NUMBER():顺序排序——1、2、3
  2.         RANK():并列排序,跳过重复序号——1、1、3
  3.         DENSE_RANK():并列排序,不跳过重复序号——1、1、2
  • 分布函数:percent_rank() / cume_dist()

  • 前后函数:lag() / lead()

  • 头尾函数:first_val() / last_val()

  • 其他函数:nth_value() / nfile()

窗口函数语法:select 窗口函数 over (partition by 用于分组的列名, order by 用于排序的列名

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值