MySQL 中 常用函数(1)

作者: djz0306 | 来源:发表于2019-07-09 21:17 被阅读1次

    本篇整理一下 MySQL 中比较常用的函数,在日常工作中遇到其他不熟悉的函数完全可以查手册,记住各种不常用函数的意义并不大。

    数学函数

    绝对值(abs)

    select abs(3-5);
    

    上面这条就可以用 abs() 返回 3-5 的绝对值 2

    进制转换(bin, oct, hex)

    select bin(7);
    

    上面这条语句就把十进制的 7 转化成二进制 111。oct(). hex() 函数也差不多,分别是转换成八进制和十六进制

    小数取整(floor, ceiling)

    select floor(3.5);
    

    上面这条即对数做向下取整,即小数点后面的舍去,而 ceiling() 则是向上取整会给出大于 x 的最小整数,例如

    select ceiling(3.4);
    

    则会返回4

    随机数(rand)

    select rand();
    

    rand() 会给出 0 到 1 之间的随机数,可以加入一个参数种子,使其生成一个指定的值

    聚合函数

    聚合函数除了前面MySQL 中 group 分组与统计函数这篇文章中归纳过的 avg(),count(), min(col), max(col), sun(col) 外,常用的还有 group_concat(col)。group_concat() 是将其拼接起来

    select group_concat(goods_id separator"-"),cat_id from goods where cat_id = 4 group by cat_id;
    

    group_concat() 默认使用逗号拼接,可以使用 separator 指定拼接的符号

    字符串函数

    ASCII码(ASCII)

    select ascii('a');
    

    返回字符 a 的 ASCII 码 97

    字符串比特长度(bit_length)

    select bit_length("武林外传");
    

    在 utf8 下返回 96,即 8*3*4,gbk 则是返回 64,8*2*4

    字符串字节长度(length)

    select length("武林外传");
    

    在 utf8 下返回 12,gbk 下返回 8。因为 utf8 下一个汉字是 3 个字节, gbk 下一个汉字是 2 个字节

    字符串的字符数(char_length)

    select char_length("武林外传");
    

    返回的就是 4 ,返回的是字符数的长度

    反转字符串 (reverse)

    select reverse("武林外传");
    

    返回的就是“传外林武”

    最右边 x 个字符(right)

    select right("武林外传",2);
    

    返回“外传”两个字

    第一次出现的位置(position)

    select position("@" in "google@gmail.com");
    

    返回 7 ,即从 1 开始数,和大多数编程语言从 0 开始不同

    相关文章

      网友评论

        本文标题:MySQL 中 常用函数(1)

        本文链接:https://www.haomeiwen.com/subject/kptqkctx.html