1 case

case value when [compare_value] then result [when[compare_value] then result....] [else result] end

case when [condition] then result [when [condition] then result...][else result] end

如果没有 条件是真,则 返回else 中的结果,如果没有else 则返回 null

2 if(expr1,expr2,expr3)

如果 expr1是真,且不是 0 或null,返回 expr2,否则返回 expr3

3 ifnull(expr1,expr2)

如果 expr1 不是null,返回 expr1,否则返回expr2

4 nullif(expr1,expr2) return null if expr1=expr2

如果 expr1=expr2 是真 则返回 null,否则返回 expr1 相当于:case when expr1=expr2 then null else expr1 end.

5 操作字符串位置的函数,第一个位置的索引为1
对于接受长度参数,如果 不是整数,由四舍五入到最近的整数

6 concat(str1,str2,...)如果有参数是null,则返回null

7 select 'my' 's' 'ql';可得到连接的字符串

8 concat_ws(separator,str1,str2,....) 使用分隔符连接字符串。如果分隔符是null 则返回null,不会跳过分隔符后的 空字符串,会跳过分隔符后的null值

9 elt(n,str1,str2,str3....) 返回第n个元素 从1开始。如果n小于1 或大于 参数数量 则返回null,是field()的补充

10 field(str,str1,str2,str3,...) 返回str在其后的参数中的位置,如果没有找到则返加0,如果str是null ,返回0

11 find_in_set(str,strlist) strlist 是由,分隔的字符串,返回 str 在strlist中的位置,SELECT FIND_IN_SET('b','a,b,c,d');

如果str不在strlist中或strlist是空的字符串,返回0,如果任何一个参数是null则返回null,

如果第一个参数包含逗号,则不能正常执行。

12 format(X,D[,locale]) 格式化数字X 取近似值到D个小数,返回值是字符串,如果D是0,返回值没有小数位。第3个可选参数可指定一个区域格式化小数位,默认为 'en_US'

format(123.55,1);

13 from_base64(str); 将用to_base64()编码的字符串,解码为字符串,如果参数不是有效的64位编码字符串,返回null

select from_base64(to_base64('abc'));

to_base64(str)将字符串参数转化为64位编码字符串

14 insert(str,pos,len,newstr);

返回从pos 位置开始长度为len 字符串替换为 newstr的新字符串。如果 pos没有在str中,则返回原字符串,如果len位置大于剩余字符串,则返回字符串中没有剩余字符串。insert('abcdef',2,4,'the')

15 instr(str,substr); 返回 substr在str中的第一个匹配位置

16 lcase(str) 同 lower()

lower()对二进制字符串无效 binary varbinary blob,转化为非二进制字符串

ucase(str) 同 upper() 返回所有字符的大写字母

set @str= bynary 'New'; select Lower(@str); select Lower(convert(@str using latin1));

17 left(str,len);从str返回最左侧的长度为len的字符串

right(str,len)从str返回最右侧长度为len的字符串

18 length(str):返回字符串的长度,按字节返回,汉字返回 2,char_length()返回1

octet_length(str)

19 locate(substr,str) 返回substr在str中的位置

locate(substr,str,pos) 返回substr在str中从pos开始的位置

postion(substr in str)

如果没有找到,返回0,如果substr 或 str中有一个null,则返回null

20 LPAD(str,len,padstr) 返回str使用padstr填充str左侧到len长度,如果 str长度大于len 则返回len个字符

RPAD(str,len,padstr)右侧填充padstr到str

21 LTRIM(str):去掉字符串的左侧空格

Rtrim(str):去掉字符串右侧空格

Trim([{both | leading | trailing}[remstr] from ] str)

Trim([remstr from ]str)

返回去掉了前缀或后缀的 remstr 的字符串str。如果没有指定 both/leading/trailing,默认为both.如 果没有指定 remstr ,移除空格

select trim('  bar  '); select trim (leading 'x' from 'xxxbarxx');select trim(both 'x' from 'xxbarxx');select trim(trailing 'x' from 'xbarx');

22 MID(str,pos,len) 同substring(str,pos,len)

substr(str,pos),substr(str from pos);substr(str,pos,len),substr(str from pos for len)

substring(str,pos),substring(str from pos),substring(str,pos,len),substring(str from pos for len)

pos可以是负数,表示从字符串的结尾开始向后取值

23 oct(N)转化为8进制

24 quote(str) 对str 加单引号

25 repeat(str,count);返回str重复count次的字符,如果count小于1 则返回空字符串,如果参数有一个为null则返回null

26 replace(str,from_str,to_str); 返回字符串 str中所有的用to_str替换from_str 后的字符串 ,from_str 大小写敏感

27 reverse(str)反转字符串

28 space(N)返回包含N个空格的字符串

29 substring_index(str,delim,count) 返回字符串从str中取第count个分隔符前的字符串。如果count是负数,则从结尾向前取第count个分隔符之后的字符串

select substring_index('www.mysql.com','.',2)

select substring_index('www.mysql.com','.',-2)

30 expr like pat [escape 'escape_char'] :空格有效

select 'a'='a ','a' like 'a ';

可使用通配符:% 配置任何数量的字符,包括0个字符;_ 匹配确切的一个字符

使用escape子句-指定不用的转义字符:select 'david_' like 'david|_' escape '|';

escape 子句应该是空或是1个字符长,表达式在执行时必须是一个常量

mysql允许在数字表达式中 使用like select 10 like '1%'

在like 字符串中必须用双\ 表示一个\

expr not like pat [escape 'escape_char']

null not like  总是返回 null

31 strcmp(expr1,expr2) 如果字符串相同返回0,如果expr1 小于 expr2 返回-1;否则 返回 1

32 charset(binary 'a') collation(binary 'a' ) 返回 binary 类型

mysql-笔记-控制语句/string方法的更多相关文章

  1. MySQL事务控制语句(学习笔记)

    MySQL事务控制语句(学习笔记) MySQL事务控制语句         在mysql命令行的默认下,事务都是自动提交的,sql语句提交后马上会执行commit操作.因此开启一个事务必须使用begi ...

  2. JavaScript学习笔记-用于模式匹配的String方法

    用于模式匹配的String方法:   String支持4种使用正则表达式的方法:           seach()用于检索,参数是一个正则表达式,返回第一个与之匹配的子串的位置,找不到则返回-1,如 ...

  3. MYSQL进阶学习笔记三:MySQL流程控制语句!(视频序号:进阶_7-10)

    知识点四:MySQL流程控制语句(7-10) 选择语句: (IF ELSE ELSE IF CASE 分支)IFNULL函数 IF语法: 语法规则: IF search_condition THEN ...

  4. 最全mysql笔记整理

    mysql笔记整理 作者:python技术人 博客:https://www.cnblogs.com/lpdeboke Windows服务 -- 启动MySQL net start mysql -- 创 ...

  5. MySql数据库乱码解决方法

    MySql数据库乱码解决方法 解决乱码问题一个原则:存取系统使用一致的编码规则. 多使用mysql的原生命令行,这样才能做更多的事情. ​ 第一步: 确认应用系统需要使用的编码 java的默认编码是跟 ...

  6. MySQL笔记汇总

    [目录] MySQL笔记汇总 一.mysql简介 数据简介 结构化查询语言 二.mysql命令行操作 三.数据库(表)更改 表相关 字段相关 索引相关 表引擎操作 四.数据库类型 数字型 字符串型 日 ...

  7. 注册mySQL到JDBC驱动程序方法浅谈

    一.注册方法(4种) 1)服务提供者框架: 符合JDBC 4.0规范的驱动程序包含了一个文件META-INF/services/java.sql.Driver,在这个文件中提供了JDBC驱动实现的类名 ...

  8. MySql笔记(一)

    目录 MySql笔记(一) 每天给自己一个希望,努力做好自己,不为明天烦恼,不为昨天叹息.当梦想还在,告诉自己:努力,就总能遇见更好的自己! MySql笔记(一) 1.创建数据库以及删除 1.创建数据 ...

  9. C# | VS2019连接MySQL的三种方法以及使用MySQL数据库教程

    本文将介绍3种添加MySQL引用的方法,以及连接MySQL和使用MySQL的教程 前篇:Visual Studio 2019连接MySQL数据库详细教程 \[QAQ \] 第一种方法 下载 Mysql ...

随机推荐

  1. 学习ASP.NET Core Razor 编程系列十五——文件上传功能(三)

    学习ASP.NET Core Razor 编程系列目录 学习ASP.NET Core Razor 编程系列一 学习ASP.NET Core Razor 编程系列二——添加一个实体 学习ASP.NET ...

  2. 与其想当然的 overdesign,不如自己动手做个试验

    Conmajia Jan. 29th, 2019 早在2012年,我曾经针对 C# System.Random 不同的初始化方案专门做过一次试验,得出了单次默认初始化即可获得质量很好的随机数的结论.可 ...

  3. mysql命令查看表结构及注释

    使用如下命令:select table_schema,table_name,column_name,column_type,column_key,is_nullable,column_default, ...

  4. 调用链监控 CAT 之 URL埋点实践

    URL监控埋点作用 一个http请求来了之后,会自动打点,能够记录每个url的访问情况,并将以此请求后续的调用链路串起来,可以在cat上查看logview 可以在cat Transaction及Eve ...

  5. Spring MVC深入学习

    一.MVC思想 MVC思想简介:        MVC并不是java所特有的设计思想,也不是Web应用所特有的思想,它是所有面向对象程序设计语言都应该遵守的规范:MVC思想将一个应用部分分成三个基本部 ...

  6. Spring MVC(二)基于标注的MVC

    1.基于标注的Spring MVC 1.1 建立一个项目导入jar包(ioc aop mvc) 拷贝容器对应的配置文件到src下 在WEB-INF建立一个login.jsp 1.2 在web.xml ...

  7. css3动画--位移加阴影

    animation: name duration timing-function delay iteration-count direction; 值 描述 animation-name 规定需要绑定 ...

  8. Snowflake(雪花算法)的JavaScript实现

    现在好多的ID都是服务器端生成的,当然JS也可以生成GUID或者UUID之类的,但是如果想要有序……这时就想到了雪花算法,但是都知道JS中Number的最大值为Number.MAX_SAFE_INTE ...

  9. 关于C++11右值引用和移动语义的探究

    关于C++11右值引用和移动语义的探究

  10. 如何做好SQLite 使用质量检测,让事故消灭在摇篮里

    本文由云+社区发表 SQLite 在移动端开发中广泛使用,其使用质量直接影响到产品的体验. 常见的 SQLite 质量监控一般都是依赖上线后反馈的机制,比如耗时监控或者用户反馈.这种方式问题是: 事后 ...