码迷,mamicode.com
首页 > 数据库 > 详细

mysql函数

时间:2015-08-04 20:47:02      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:

  • 字符串函数

    1. CONCAT( str1,str2,...)字符串拼接

      Description: 返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。或许有一个或多个参数。如果所有参数均为非二进制字符串,则结果为非二进制字符串。 如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。

      Example:

      select id,CONCAT(‘http://home.imeishi.com/pai-‘,id,‘.html‘) as url,uid, username from uchome_plug_pai_photo where id!=‘‘ and dateline>=1437926400 and dateline0 and classify=2 LIMIT 3

      Result:

       技术分享

    2. CONCAT_WS( separator,str1,str2,...)用separator将字符串拼接起来

      Description: CONCAT_WS() 代表 CONCAT With Separator ,是CONCAT()的特殊形式。 第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数。如果分隔符为 NULL,则结果为 NULL。函数会忽略任何分隔符参数后的 NULL 值。

      Example:

      SELECT id,uid,username,concat_ws(‘,‘,viewnum,reconum,likenum,replynum) as test FROM uchome_plug_pai_photo WHERE classify=2 AND state>0 LIMIT 3

      Result:

      技术分享

    3. FORMAT(X ,D)

      Description: 将number X 设置为格式 ‘#,###,###.##‘, 以四舍五入的方式保留到小数点后 D 位, 而返回结果为一个字符串

      Example:

      select id,uid,username,format(replynum,2) as test FROM uchome_plug_pai_photo WHERE classify=AND state>0 LIMIT 5

      Result:

      技术分享

    4. INSERT(str ,pos,len,newstr )

      Description: 返回字符串 str , 其子字符串起始于 pos 位置和长期被字符串 newstr 取代的 len 字符。 如果 pos 超过字符串长度,则返回值为原始字符串。 假如 len 的长度大于其它字符串的长度,则从位置 pos 开始替换。若任何一个参数为null,则返回值为NULL。

      Example:

      select insert(subject,11,100,‘...‘) FROM uchome_plug_pai_photo LIMIT 100

      Result:

      技术分享

    5. INSTR(str ,substr )

      Description: 返回字符串 str 中子字符串的第一个出现位置。这和LOCATE()的双参数形式相同,除非参数的顺序被颠倒。

      Example:

      select os ,instr(os,‘PC‘) as test from uchome_plug_pai_photo WHERE state>0

      Result:

      技术分享

    6. LCASE( str )

      Description: LCASE() 是 LOWER()的同义词。将str小写

      Example:

      select os,lcase(os) as test from uchome_plug_pai_photo WHERE state>0

      Result:

      技术分享

    7. UPPER( str )

      Description: 返回字符串 str , 以及根据最新字符集映射转化为大写字母的字符 (默认为cp1252 Latin1).

      Example:

      SELECT UPPER(‘Hej‘);

      ->HEJ

    8. LEFT(str ,len)

      Description: 返回从字符串 str 开始的 len 最左字符。

      Example:

      select subject,left(subject,10) as test FROM uchome_plug_pai_photo WHERE state>0 LIMIT 50

      Result:

      技术分享

    9. RIGHT(str ,len)

      Description: 从字符串 str 开始,返回最右 len 字符。

      Example:

      SELECT RIGHT(‘foobarbar‘, 4);

      Result:

      -> ‘rbar‘

    10. LENGTH(str )

      Description: 返回值为字符串 str 的长度,单位为字节。一个多字节字符算作多字节。这意味着 对于一个包含5个2字节字符的字符串, LENGTH() 的返回值为 10, 而 CHAR_LENGTH()的返回值则为5。

      Example:

      select subject,length(subject) as test1,os,length(os) FROM uchome_plug_pai_photo WHERE state>0 LIMIT 50

      Result:

      技术分享

    11. LPAD( str ,len,padstr )

      Description: 返回字符串 str , 其左边由字符串 padstr 填补到 len 字符长度。假如 str 的长度大于 len, 则返回值被缩短至 len 字符。

      Example:

      select subject,lpad(subject,15,‘_‘)FROM uchome_plug_pai_photo WHERE state>0 LIMIT 50

      Result:

      技术分享

    12. RPAD( str ,len,padstr )

      Description: 返回字符串 str , 其右边被字符串 padstr 填补至 len 字符长度。假如字符串 str 的长度大于 len,则返回值被缩短到与 len 字符相同长度。

      Example:

      select subject,rpad(subject,15,‘_‘)FROM uchome_plug_pai_photo WHERE state>LIMIT 50

      Result:

      技术分享

    13. LTRIM(str )

      Description: 返回字符串 str ,其引导空格字符被删除。

      Example:

      Result:

    14. RTRIM(str )

      Description: 返回字符串 str ,结尾空格字符被删去。

      Example:

      SELECT RTRIM(‘barbar   ‘);

      Result:

      -> ‘barbar‘

    15. TRIM([{BOTH | LEADING | TRAILING} [ remstr] FROM] str ) TRIM(remstr FROM] str )

      Description: 返回字符串 str , 其中所有 remstr 前缀和/或后缀都已被删除。若分类符BOTH、LEADIN或TRAILING中没有一个是给定的,则假设为BOTH 。 remstr 为可选项,在未指定情况下,可删除空格。

      Example:

      mysql> SELECT TRIM(‘ bar ‘);

      -> ‘bar‘

      mysql> SELECT TRIM(LEADING ‘x‘ FROM ‘xxxbarxxx‘);

      -> ‘barxxx‘

      mysql> SELECT TRIM(BOTH ‘x‘ FROM ‘xxxbarxxx‘);

      -> ‘bar‘

      mysql> SELECT TRIM(TRAILING ‘xyz‘ FROM ‘barxxyz‘);

      -> ‘barx‘

    16. REPEAT(str ,count )

      Description: 返回一个由重复的字符串 str 组成的字符串,字符串 str 的数目等于 count 。 若 count <= 0,则返回一个空字符串。若 str 或 count 为 NULL,则返回 NULL 。

      Example:

      SELECT REPEAT(‘MySQL‘, 3);

      Result:

      ->‘MySQLMySQLMySQL‘

    17. REPLACE(str ,from_str,to_str )

      Description: 返回字符串 str 以及所有被字符串 to_str 替代的字符串 from_str 。

      Example:

      select os,replace(os,‘OS‘,‘os‘) as test FROM uchome_plug_pai_photo WHERE state>0 and os!=‘‘ LIMIT 50

      Result:

      技术分享

    18. REVERSE( str )

      Description: 返回字符串 str ,顺序和字符顺序相反。

      Example:

      SELECT REVERSE(‘abc‘);

      Result:

      -> ‘cba‘

    19. SUBSTRING( str ,pos) , SUBSTRING( str FROM pos) SUBSTRING( str ,pos,len) , SUBSTRING( str FROM pos FOR len)

      Description: SUBSTR()是 SUBSTRING()的同义词。不带有 len 参数的格式从字符串 str 返回一个子字符串,起始于位置 pos 。带有 len 参数的格式从字符串 str 返回一个长度同 len 字符相同的子字符串,起始于位置 pos 。 使用 FROM的格式为标准 SQL 语法。也可能对 pos 使用一个负值。假若这样,则子字符串的位置起始于字符串结尾的 pos 字符,而不是字符串的开头位置。在以下格式的函数中可以对 pos 使用一个负值。

      Example:

      mysql> SELECT SUBSTRING(‘Quadratically‘,5);
      -> ‘ratically‘

      mysql> SELECT SUBSTRING(‘Quadratically‘,5);

      -> ‘ratically‘

      mysql> SELECT SUBSTRING(‘foobarbar‘ FROM 4);

      -> ‘barbar‘

      mysql> SELECT SUBSTRING(‘Quadratically‘,5,6);

      -> ‘ratica‘

      mysql> SELECT SUBSTRING(‘Sakila‘, -3);

      -> ‘ila‘

      mysql> SELECT SUBSTRING(‘Sakila‘, -5, 3);

      -> ‘aki‘

      mysql> SELECT SUBSTRING(‘Sakila‘ FROM -4 FOR 2);

      -> ‘ki‘

    20. SUBSTRING_INDEX(str ,delim ,count )

      Description: 在定界符 delim 以及 count 出现前,从字符串 str 返回自字符串。若 count 为正值,则返回最终定界符(从左边开始)左边的一切内容。若 count 为负值,则返回定界符(从右边开始)右边的一切内容。

      Example:

      mysql> SELECT SUBSTRING_INDEX(‘www.mysql.com‘, ‘.‘, 2);

      -> ‘www.mysql‘

      mysql> SELECT SUBSTRING_INDEX(‘www.mysql.com‘, ‘.‘, -2);

      -> ‘mysql.com‘

    21. UCASE(str )

      Description: UCASE()是UPPER()的同义词。

      Example:

      Result:

  • 数学函数(若发生错误,所有数学函数会返回 NULL 。)

    1. ABS( X )

      Description: 返回 X 的绝对值。

    2. ACOS(X )

      Description: 返回 X 反余弦, 即, 余弦是 X 的值。若 X 不在-1到 1的范围之内,则返回 NULL 。

    3. ASIN( X )

      Description: 返回 X 的反正弦,即,正弦为 X 的值。若 X   若 X 不在-1到 1的范围之内,则返回 NULL 。

    4. ATAN( X )

      Description: 返回 X 的反正切,即,正切为 X 的值。

    5. ATAN( Y ,X ) , ATAN2( Y ,X )

      Description: 返回两个变量 X 及 Y 的反正切。 它类似于 Y 或 X 的反正切计算, 除非两个参数的符号均用于确定结果所在象限。

    6. CEILING(X ) CEIL(X )

      Description: 返回不小于 X 的最小整数值。

      mysql> SELECT CEILING(1.23);

      -> 2

      mysql> SELECT CEIL(-1.23);

      -> -1

    7. CRC32(expr)

      Description: 计算循环冗余码校验值并返回一个 32比特无符号值。若参数为NULL ,则结果为 NULL。该参数应为一个字符串,而且在不是字符串的情况下会被作为字符串处理(若有可能)。区分大小写

    8. EXP( X )

      Description: 返回e的 X 乘方后的值(自然对数的底)。

    9. FLOOR(X )

      Description: 返回不大于 X 的最大整数值 。

      mysql> SELECT FLOOR(1.23);

      -> 1

      mysql> SELECT FLOOR(-1.23);

      -> -2

    10. MOD(N,M ) , N % M N MOD M

      Description: 模操作。返回 N 被 M 除后的余数。

    11. PI()

      Description: 返回 π (pi)的值。默认的显示小数位数是7位,然而 MySQL内部会使用完全双精度值。

    12. POW(X ,Y ) , POWER(X ,Y )

      Description: 返回 X 的 Y 乘方的结果值。

    13. RAND() RAND( N)

      Description: 返回一个随机浮点值 v ,范围在 0 到1 之间 (即, 其范围为 0 ≤ v ≤ 1.0)。若已指定一个整数参数 N ,则它被用作种子值,用来产生重复序列。

    14. ROUND( X ) ROUND( X ,D)

      Description: 返回参数 X , 其值接近于最近似的整数。在有两个参数的情况下,返回 X ,其值保留到小数点后 D 位,而第 D 位的保留方式为四舍五入。若要接保留 X 值小数点左边的 D 位,可将 D 设为负值。

    15. SIGN( X )

      Description: 返回参数作为-1、 0或1的符号,该符号取决于 X 的值为负、零或正。

      Example:

      mysql> SELECT SIGN(-32);

      -> -1

      mysql> SELECT SIGN(0);

      -> 0

      mysql> SELECT SIGN(234);

      -> 1

       

mysql函数

标签:

原文地址:http://www.cnblogs.com/yingnan/p/4701652.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!