zoukankan      html  css  js  c++  java
  • mysql字符串拼接

    1.CONCAT()
    2.CONCAT_WS()
    3.GROUP_CONCAT()
    为了方便下面举例,这里放个student表供下面使用

      s_id s_name   s_sex
       01     张三       男
       02     李四       男
       03     王五       男
       04     赵六      null


    一、CONCAT() :
    最常用的字符串拼接方法,但遇到拼接中的字符串出现null的情况会返回null
    语法:CONCAT(string1,string2)
    DEMO1
    mysql > SELECT CONCAT(s_name,s_sex) FROM student
    +----------------------+
    CONCAT(s_name,s_sex)
    +----------------------+
    张三男
    赵四男
    王五男

    二、CONCAT_WS():concat with separator
    比CONCAT的优点
    多了个分隔符功能
    如果某个字符串为null,会忽略null,并返回其他字符串的值
    语法:CONCAT_WS(separator,str1,str2,…)
    代表 concat with separator ,是concat()的特殊形式。第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数
    DEMO2
    mysql > SELECT CONCAT_WS('--',s_name,s_sex) FROM student
    +-------------------------------+
    CONCAT_WS('--',s_name,s_sex)
    +-------------------------------+
    张三--男
    赵四--男
    王五--男
    赵六


    三、GROUP_CONCAT()
    连接字段,多个值显示为一行
    语法 :group_concat( [DISTINCT] 连接的字段 [Order BY 排序字段 ASC/DESC] [Separator ‘分隔符’] )
    连接的可以是多个字段,也可以对连接字段进行排序
    DEMO3:
    mysql > SELECT GROUP_CONCAT(s_id) FROM student
    +--------------------------------------------+
    GROUP_CONCAT(s_id)
    +--------------------------------------------+
    01,02,03

    DEMO4:连接多个字段,并以其中一个字段排序
    mysql > SELECT GROUP_CONCAT(s_id,s_name order by s_id desc) FROM student
    +--------------------------------------------+
    GROUP_CONCAT(s_id,s_name order by s_id desc)
    +--------------------------------------------+
    03王五,02赵四,01张三
    ————————————————

  • 相关阅读:
    TCP/IP协议栈之QEMU
    FreeRTOS-Plus-CLI中添加一个自己的命令行
    FreeRTOS A57
    log日志库
    函数解读:ioremap / ioremap_nocache / ioremap_wc / ioremap_wt
    Makefile 使用小结
    41. 缺失的第一个正数(First Missing Positive)
    42. 接雨水(Trapping Rain Water)
    关于C++内联和静态成员函数的问题
    C++11 线程并发问题
  • 原文地址:https://www.cnblogs.com/songadmin/p/14769539.html
Copyright © 2011-2022 走看看