CONCAT 可以把多个字符串连在一起,如把 doc_id 和 title这两个字段的查询结果组合成一个字符串:
SELECT CONCAT(doc_id,title) FROM simhash;

CONCAT_WS可以用指定的分隔符把多个字符串连接在一起,第一个参数为连接符,剩下的是字符串,如:
SELECT CONCAT_WS('-',doc_id,title) FROM simhash; doc_id和title中间会用 - 隔开

FORMAT()可以把数字格式化为字符串,第一个参数是要格式化的数字,第二个参数为保留小数点后多少位.

LOWER()把一个字符串所有字母转成小写, UPPER()把字符串所有字母转成大写

LEFT()是取一个字符串的前几位,第一个参数是字符串,第二个参数是取前多少个字符.RIGHT()同理

LENGTH()获取字符串长度, LTRIM(), RTRIM(), TRIM() 分别是删除前面的空格,后面的空格以及前后的空格.

REPLACE()替换字符串,第一个参数是字符串,第二个参数是被替换的字符串,第三个参数是新字符串(可以用多个字符替换多个字符)

SUBSTRING()截取字符串,第一个 参数是需要截取的字符串,第二个参数是从第几个字符开始截(mysql从1开始,没有0),第三个参数是截几个

CEIL() 向上取整, FLOOR()向下取整, DIV()整数除法(舍弃小数位), MOD()取余, POWER()幂运算 ROUND()四舍五入, TRUNCATE数字截取

NOW()当前日期和时间, CURDATE()当前日期, CURTIME()当前时间, DATE_ADD()时间增加或减少,如 DATE_ADD(NOW(),INTERVAL 1 MONTH) 代表当前时间加上1个月, DATEDIFF()计算两个日期的差值, DATE_FORMAT()日期格式化,第一个参数是需要格式化的日期第二个参数是格式化样式,如 SELECT date_format(now(),'%Y-%m-%d %H:%m:%s')

聚合函数: AVG()平均数, COUNT()总数, MAX()最大值, MIN()最小值, SUM()求和

加密函数: MD5(), PASSWORD()

declare 声明的变量是局部变量,只能在存储过程中或函数中使用,变量以@开头,用 set声明的,如 set @a = 1,这种变量是会话变量,对一个会话都有效.

典型函数主体写法: declare定义局部变量, set赋值, while xxx do end while 是循环语句, if xxx then end if 是判断语句

BEGIN
declare dis int;
declare i int;
set dis = ;
set i = ;
while i < do
if(new_num >> i & ) != (old_num >> i & ) then
set dis = dis + ;
end if;
set i = i + ;
end while;
RETURN dis;
END

MySQL数据库 : 函数和存储过程的更多相关文章

  1. Mysql中函数和存储过程的区别

    Mysql中函数和存储过程的区别 存储过程: 1.       可以写sql语句 2.       inout,out构造返回值 3.       调用:call:存储过程名称 4.       可以 ...

  2. mysql导出函数或者存储过程 设置显示方式

    mysql导出函数或者存储过程 mysqldump -hhostname -uusername -ppassword -ntd -R databasename > /app/backupflie ...

  3. Mysql导出函数、存储过程

    下面是导出存储过程的代码 1 # mysqldump -u 数据库用户名 -p -n -t -d -R 数据库名 > 文件名 其中,-d 表示--no-create-db, -n表示--no-d ...

  4. MySQL自定义函数与存储过程

    1.前置条件 MySQL数据库中存在表user_info,其结构和数据如下: mysql> desc user_info; +-----------+----------+------+---- ...

  5. MySQL自定义函数与存储过程的创建、使用、删除

    前言 日常开发中,可能会用到数据库的自定义函数/存储过程,本文记录MySQL对自定义函数与存储过程的创建.使用.删除的使用 通用语法 事实上,可以认为存储过程就是没有返回值的函数,创建/使用/删除都非 ...

  6. MySQL自定义函数和存储过程的区别:

    自定义函数和存储过程的区别: 1)一般来说,存储过程实现的功能要复杂一点,而函数的实现的功能针对性比较强.存储过程,功能强大,可以执行包括修改表等一系列数据库操作:用户定义函数不能用于执行一组修改全局 ...

  7. MySQL数据库----函数

    函数 MySQL中提供了许多内置函数,例如: CHAR_LENGTH(str) 返回值为字符串str 的长度,长度的单位为字符.一个多字节字符算作一个单字符. 对于一个包含五个二字节字符集, LENG ...

  8. mysql 创建函数或者存储过程,定义变量报错

    报错的原因是因为在过程或者函数中存在分隔符 分号(:),而mysql中默认分隔符也是 :,这就导致存储过程分开了 在存储过程外面包一层 delimiter //   code  //就行了

  9. MySQL 导出函数与存储过程

    C:\Users\yan>mysqldump -u用户 -p -n -t -d -R 数据库 > .sql Enter password: ******** C:\Users\yan> ...

随机推荐

  1. 使用原生的javascript来实现轮播图

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. 第三篇:jvm之垃圾回收器

    一.Serial收集器 新生代收集器,在垃圾回收时,必须暂停其他所有的工作线程.即Stop-The-World. 评价:老而无用,食之无味,弃之可惜. 二.ParNew收集器 新生代收集器,seria ...

  3. 深入理解token

      链接:https://my.oschina.net/jamesfancy/blog/1613994 摘要: Token 是在服务端产生的.如果前端使用用户名/密码向服务端请求认证,服务端认证成功, ...

  4. LeetCode-Largest Rectangle in Histogram O(n) 详析-ZZ

    http://www.cnblogs.com/felixfang/p/3676193.html Largest Rectangle in Histogram Given n non-negative ...

  5. laravel where筛选会判断类型吗?

    laravel where筛选会判断类型吗? laravel where筛选会判断类型吗? laravel where筛选会判断类型吗? 这个说会判断不对,说不会判断也不对. 当字符串'1'和数值1是 ...

  6. Java使用iText生成word文件的完美解决方案(亲测可行)

    JAVA生成WORD文件的方法目前有以下种: 一种是jacob 但是局限于windows平台 往往许多JAVA程序运行于其他操作系统 在此不讨论该方案 一种是pio但是他的excel处理很程序 wor ...

  7. codeforces 797 E. Array Queries【dp,暴力】

    题目链接:codeforces 797 E. Array Queries   题意:给你一个长度为n的数组a,和q个询问,每次询问为(p,k),相应的把p转换为p+a[p]+k,直到p > n为 ...

  8. Intellij IDEA 格式化代码

  9. php------中文出现乱码解决方法

    中文出现乱码解决方法:原因编码格式不一致 [1]  建立数据库的时候,字符集选择utf-8  数据库,点表名,点右键,数据库属性…. [2]  修改myspl的配置,在[myspld]模块下面添加ch ...

  10. POJ 3368 Frequent values 【ST表RMQ 维护区间频率最大值】

    传送门:http://poj.org/problem?id=3368 Frequent values Time Limit: 2000MS   Memory Limit: 65536K Total S ...