=========================================== mysql 相关函数 =================================================

===========================================  数学函数  =====================================================

绝对值函数    abs()
圆周率函数 PI()
开平方根函数 sqrt()
求余函数 mod(x, y) 返回x除以y的余数
获取整数的函数 ceil(x), ceiling(x), 向上取整, floor(x) 向下取整
获取随机数的函数 rand(), 产生0-1之间的随机小数 rand(x),相同参数x获取的随机数相同,不同则不同
round(x), 返回最接近x的整数, round(x, y), 四舍五入,保留y位小数, truncate(x, y), 截取操作,保留y位小数
符号函数 sign(x), 返回x的符号, 0则返回0, -2放回-1
幂函数 pow(x, y) , power(x, y),返回x的y次方, exp(3) ,返回e的三次方
对数运算函数 log(x), log10(x)
角度与弧度相互转换的函数 radians(180) = 3.14 degrees(pi()) = 180
round(sin(pi())) = 0 cos(0) = 1 round(tan(pi()/4)) = 1 =========================================== 字符串函数 =================================================== 计算字符串长度函数 char_length("date") = 4 length("张波") = 6 返回字节长度 一个汉字三个字节
合并字符串函数 concat('my sql', '5.7') = 'my sql5.7' concat_ws('-', '1', '2', '3') = '1-2-3'
替换字符串函数 insert(s1, x, len, s2)
字母大小写转换的函数 lower('BEAUTIFUL')=beautiful, lcase('Z') = z, upper('black')=BLACK, ucase('z')=Z
获取指定长度的字符串函数 left('foot', 2)=fo , right('foot', 2)=ot
填充字符串函数 lpad('she', 2, '??')= sh, lpad('she', 4, '??')= ?she,
rpad('she', 2, '??')= sh, rpad('she', 4, '??')= she?,
删除空格的函数 ltrim(' b ')='b ' rtrim(' b ')=' b' trim(' b ')='b'
删除指定字符串函数 trim('xy' from 'xysxyxxy')= 'sxys' 删除两端的xy
重复生成字符串函数 repeat('my', 3)='mymymy'
空格函数 space(n) 返回n哥空格组成的字符串
替换函数 replace('xxxx.mysql.com', 'x', 'w')='www.mysql.com'
比较字符串大小的函数 strcmp('a', 'as') = -1 strcmp('as', 'as') = 0 strcmp('as', 'a') = 1
获取子串的函数 substring(s,n,len) 返回起始位置n,长度为len的子串 mid(s, n, len)和前面函数返回结果一样
获取子串开始位置的函数 locale('ball', 'football')=5 position('ball' in 'football')=5 insert('football', 'ball')=5
字符串逆序的函数 reverse('abc') = 'cba'
获取指定位置的字符串的函数 elt(3, '1', '2', '3')='3' elt(4, '1', '2', '3')=null
field('hi', 'hihi', 'hi', 'h') = 2 field('hi', 'hihi', 'h') = 0
获取子串位置的函数 find_in_set('hi', 'hihi, hi, h')=2
选取字符串的函数 make_set(x, s1, s2) 跟二进制有关系 有点复杂 请读者自行验证 ========================================== 日期和时间函数 ================================================= 获取当前日期和时间的函数 curdate() = '2018-08-10' current_date() = '2018-08-10' curdate() + 0 = 20180810 返回数值型
current_timestamp() = localtime() = now() = sysdate() = '2018-08-10 23:33:33'
unix时间戳函数 unix_timestamp() = unix_timestamp(now()) = 1533915373 from_timestamp('1533915373') = '2018-08-10 23:33:33'
utc日期函数和utc时间函数 utc_date() = '2018-08-10' utc_date() + 0 = '20180810'
utc_time() = '23:33:33' utc_time() + 0 = '233333.000000'
获取月份的函数 month('2018-08-10') = 8 monthname('2018-08-10') = August
获取星期的函数 dayname('2018-08-12')=sunday dayofweek('2018-08-12')=1 weekday('2018-08-12')=6
获取星期数的函数 week('2018-08-12') weekofyear(d) 返回某天在一年中的第几周 用的不多吧 详情请看书
返回一年中的第几天 dayofyear('2016-02-20')=51 dayofmonth('2016-02-20')=20 返回一个月中的第几天
返回指定日期对应的年份 year('11-02-03')=2011 00-69 - 2000-2069
返回对应的季度 quarter('2018-04-01')=2 minute('16-02-03 10:10:11')=10 返回对应的分钟值
返回指定时间的秒数 second('16-02-03 10:10:11')=11
获取日期指定值得函数 extract('year from '2016-02-03') = 2016 extract('year_month from '2016-02-03') = 201602
extract('day_minute from '2016-02-03 10:10:22') = 031010
时间秒针转换函数 time_to_sec('23:23:00')=84180 23 * 3600 + 23 * 60 + 0 = 84180
sec_to_time 与上面互为反函数
计算时间和日期的函数 date_add('2010-12-31 23:59:59', interval 1 second) = 2011-01-01 00:00:00
adddate('2010-12-31 23:59:59', interval 1 second) = 2011-01-01 00:00:00
date_add('2010-12-31 23:59:59', interval '1:1' minute_second) = 2011-01-01 00:01:00
date_sub 和 subdate是上面函数的反函数
addtime('2010-12-31 23:59:59', '1:1:1') = 2011-01-01 01:01:00 subtime() 是反函数
返回两个日期之间的间隔天数 datediff(date1, date2) = date1 - date2
日期和时间格式化函数 date_format('2018-08-12 14:12:12', '%W %M %Y') = sunday August 2018
格式化请参阅书本157页 太多了 还有time_format(date, '%x') ================================= 条件判断函数,系统信息函数, 加/解密函数,其他函数 ==================================== 条件判断函数 if(expr, v1, v2) 如果expr为真 返回v1, 为假返回v2 if(1>2, 2, 3) = 3
ifnull(v1, v2) v1不为null 返回v1 否则返回v2 ifnull(1, 2) = 1 ifnull(null, 10) = 10
case expr when v1 then r1 [when v2 then r2] [else rn] end
expr = vn 则返回对应的then后面的rn值, 否则返回end
case when v1 then r1 when v2 then r2 else rn vn为true则返回对应then后面的rn 系统信息函数 version() 查看mysql的版本号 5.7.10 connection_id() 查看mysql服务器当前连接次数
show processlist 当前用户连接信息 这个可以用到哦 特别是查看 mysql账号的时候 ***********重点关注**********
书上面有各个字段名的解释 不懂得可以参考一下 162页
show database() , show schema() 查看当前数据库 返回mysql
show user(), current_user(), system_user() 查看用户名
获取字符串的字符集和排列方式的函数 charset('abs') = utf8 charset(convert('abs' using latin1)) = latin1
collation() 返回字符串排列方式 latin2_general_ci utf8_general_ci
查看最后一次插入生成的生成的第一个ID last_insert_id() 加密函数 password(str) MD5(str) encode(str, pswd_str) 使用pswd_str加密str
解密函数 decode(encode(str, pswd_str), pswd_str) = str
格式化函数 format(x, n) format(12.3456, 2) = 12.34 format(12.3456, 6) = 12.345600 保留小数点位指定值 **重点关注**
不同进制的数字进行转换到的函数 conv(n, form_base, to_base) 详情请看书 168
IP地址与数字相互转换的函数 inet_aton('209.207.224.40') = 3520061480 字符串网络地址转换成数值网络地址
加锁函数和解锁函数 get_lock(str, timeout) get_lock('lock1', 10) = 1 加锁成功 0 加锁失败
is_used_lock(str) is_used_lock('lock1') = 1 正在被使用
is_free_lock(str) is_free_lock('lock1') = 0 正在被使用
release_lock(str) release_lock('lock1') = 1 解锁成功
重复执行指定操作函数 benchmark(count, expr) expr函数执行count次
改变字符集的函数 charset(convert('abs' using latin1)) = latin1
改变数据类型的函数 case(x, as type), convert(x, type) 意思显而易见
case(100, as char(2)) = 10
convert('2018-08-12 15:22:23', time) = 15: 22: 23 这是一个美好的周末 听着朴树的空帆船(很好听的歌哦) =========================================== mysql 相关函数 结束 =================================================
												

mysql 函数 时间函数,数学函数,字符串函数,条件判断函数的更多相关文章

  1. hive:条件判断函数

    参考hive常用运算. •If函数: if •非空查找函数: COALESCE •条件判断函数:CASE • If 函数 : if 语法: if(boolean testCondition, T va ...

  2. Oracle 条件判断函数decode和case when then案例

    --decode条件判断函数 ,,,,,) from dual --需求:不通过连表查询,显示业主类型名称列的值 ,,,'商业','其他') from t_owners --case when the ...

  3. MYSQL 常用函数(数学、字符串、日期时间、系统信息、加密)

    一.数学函数 数学函数主要用于处理数字,包括整型.浮点数等. ABS(x) 返回x的绝对值 SELECT ABS(-1) -- 返回1 CEIL(x),CEILING(x) 返回大于或等于x的最小整数 ...

  4. 2016/3/17 Mysq select 数学函数 字符串函数 时间函数 系统信息函数 加密函数

    一,数学函数主要用于处理数字,包括整型.浮点数等. ABS(X) 返回x的绝对值 SELECT ABS(-1)--返回1 CEll(X),CEILING(x)  返回大于或等于x的最小整数 SELEC ...

  5. 【数据库】MySQL 函数大全包含示例(涵盖了常用如时间、数字、字符串处理、数据流函数的和一些冷门的)

    ps:博客园markdown不能自动生成列表,更好的阅读体验可访问我的个人博客http://www.isspark.com/archives/mysqlFunctionDesc 数学函数(Mathem ...

  6. SQL server 创建 修改表格 及表格基本增删改查 及 高级查询 及 (数学、字符串、日期时间)函数[转]

    SQL server 创建 修改表格 及表格基本增删改查 及 高级查询 及 (数学.字符串.日期时间)函数   --创建表格 create table aa ( UserName varchar(50 ...

  7. MySQL好用的数学函数

    最近项目很忙,分给我的功能都比较复杂,还好能应付的下来.在工作的过程中,我发现使用mysql的自带函数能够极大的减少程序的复杂度.这是必然的,使用mysql的函数,能够在程序里面省却很多的循环遍历.但 ...

  8. MySQL日期时间函数大全(转)

    MySQL日期时间函数大全 DAYOFWEEK(date)  返回日期date是星期几(1=星期天,2=星期一,……7=星期六,ODBC标准)mysql> select DAYOFWEEK('1 ...

  9. mysql 中时间和日期函数应用

    一.MySQL 获得当前日期时间 函数 1.1 获得当前日期+时间(date + time)函数:now() mysql> select now(); +-------------------- ...

随机推荐

  1. 08java进阶——异常

    1.异常的概念 package cn.jxufe.java.chapter08.demo01; public class Test01ArithmeticException { public stat ...

  2. 值栈ValueStack的原理与生命周期

    1.ValueStack贯穿整个 Action 的生命周期,保存在request域中,所以ValueStack和request的生命周期一样.当Struts2接受一个请求时,会迅速创建ActionCo ...

  3. spring 管理bean

    目录结构: Person.java package com.wss.entity; import com.wss.service.doHomeWork; public class Person { p ...

  4. 【串线篇】spring boot使用外置的Servlet容器

    嵌入式Servlet容器:应用打成可执行的jar 优点:简单.便携: 缺点:默认不支持JSP.优化定制比较复杂 (使用定制器[ServerProperties/自定义EmbeddedServletCo ...

  5. sqlserver数据库脱机和分离的区别

    脱机和分离的区别: 分离和脱机都可以使数据库不能再被使用,但是分离后需要附加才能使用,而脱机后只需联机就可以用了. 附加数据库报错: 无法打开物理文件 XXX.mdf".操作系统错误 5:& ...

  6. POI拆分单元格,并设置拆分后第一个cell的值为空cell的值

    // 从第A7开始,拆分单元格 CellReference ref = new CellReference("A7"); //遍历sheet中的所有的合并区域 for (int i ...

  7. node的cropto加密

    本文转自https://blog.csdn.net/sinat_35670989/article/details/78224214 'use strict' //crypto(kri:pto)意为加密 ...

  8. prefetches

    用于设置预请求的所有url的列表,该部分URL,会在进入小程序后自动发起请求(优于开发者代码加载).当开发者再次发起request请求时可以增加cache参数,如果配置的prefetch请求已返回,则 ...

  9. luogu 3488 [POI2009]LYZ-Ice Skates 线段树 + 思维

    Code: #include <bits/stdc++.h> #define setIO(s) freopen(s".in","r",stdin), ...

  10. Android 拖拽功能的使用实例

    图片的拖拉功能是处理图片进一个有用且常用的功能,由于手机屏幕尺寸的限制,往往无法在手机上一次性的显示一张比较大的图片,也就是说,我们在手机上一次性只能看到图片的一部分,此时就可以使用图片的拖动功能来拖 ...