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:不管汉字还是数字或者是字母都算是一个字符


  • 相关阅读:
    java第九次作业
    java第八次作业
    java第七次作业
    java第六次作业
    java第五次作业
    java第四次作业
    java第三次作业
    java第二次作业
    java第一次作业
    Javascript设计模式-----装饰者模式
  • 原文地址:https://www.cnblogs.com/gaoxu387/p/2201836.html
Copyright © 2011-2022 走看看