zoukankan      html  css  js  c++  java
  • MYSQL常用函数

    经常使用MYSQL,收集一些常用的函数来应付不给力的记性~


    1.FIND_IN_SET

    -FIND_IN_SET(str,strlist)

    假如字符串str 在由N 子链组成的字符串列表strlist 中,则返回值的范围在 1 到 N 之间。一个字符串列表就是一个由一些被‘,’符号分开的自链组成的字符串。如果第一个参数是一个常数字符串,而第二个是type SET列,则   FIND_IN_SET() 函数被优化,使用比特计算。如果str不在strlist 或strlist 为空字符串,则返回值为 0 。如任意一个参数为NULL,则返回值为 NULL。这个函数在第一个参数包含一个逗号(‘,’)时将无法正常运行。

    mysql> SELECT FIND_IN_SET('b','a,b,c,d');

    -> 2

    用起来很简单

    就以上面我说到的情况来举例:

    以下为引用的内容:

    select * from article where FIND_IN_SET('4',type)

    2.CONCAT

    -CONCAT(str1,str2,…)
    一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式类型 cast, 例如:
    SELECT CONCAT(CAST(int_col AS CHAR), char_col)

    MySQL的concat函数在连接字符串的时候,只要其中一个是NULL,那么将返回NULL

    select concat('11','22',null);  


    2.CONCAT_WS

    concat_ws()函数和concat()都是MySQL字符串处理函数,功能比较类似,但是也所有所区别,主要是处理的字符串不大一样

    concat_ws()函数, 表示concat with separator,即有分隔符的字符串连接
    如连接后以逗号分隔:

    mysql> select concat_ws(',','11','22','33');  
     
    +-------------------------------+  
    | concat_ws(',','11','22','33') |  
    +-------------------------------+  
    | 11,22,33      |  
    +-------------------------------+  
           1 row in set (0.00 sec)  
    

    和concat不同的是, concat_ws函数在执行的时候,不会因为NULL值而返回NULL


    2.LENGTH  和CHAR_LENGTH

    length:   是计算字段的长度一个汉字是算三个字符,一个数字或字母算一个字符

    char_length:不管汉字还是数字或者是字母都算是一个字符


  • 相关阅读:
    文件系列--截取路径字符串,获取文件名
    ASP.NET State Service (ASP.NET 状态服务)已启动,并且客户端端口与服务器端口相同
    大小写字母,特殊字符,数字,四选一组合或者全组合,长度至少八位,验证
    设计模式-23种设计模式介绍
    &和&&区别
    GridView中Button多参数传参
    HTTP 错误 500.19
    Windows系统添加端口号
    win10安装IIS服务
    2019最新整理PHP面试题附答案
  • 原文地址:https://www.cnblogs.com/gaoxu387/p/2201836.html
Copyright © 2011-2022 走看看