MySQL函数学习(一)-----字符串函数
一、MySQL 字符串函数
\ | 函 数 名 称 | 作 用 | 完 成 |
---|---|---|---|
1 | LENGTH |
计算字符串字节 长度 |
勾 |
2 | CONCAT |
合并字符串函数,返回结果为连接参数产生的字符串,参数可以是一个或多个 | 勾 |
3 | INSERT |
替换字符串函数 | 勾 |
4 | LOWER |
将字符串中的字母转换为小写 | 勾 |
4 | UPPER |
将字符串中的字母转换为大写 | 勾 |
5 | LEFT |
从左侧字截取符串,返回字符串左边的若干个字符 | 勾 |
5 | RIGHT |
从右侧字截取符串,返回字符串右边的若干个字符 | 勾 |
6 | TRIM |
删除字符串左右两侧的空格 | 勾 |
7 | REPLACE |
字符串替换函数,返回替换后的新字符串 | 勾 |
8 | SUBSTRING |
截取字符串,返回从指定位置开始的指定长度的字符换 | 勾 |
9 | REVERSE |
字符串反转(逆序)函数,返回与原始字符串顺序相反的字符串 | 勾 |
1. CHAR_LENGTH、CHARACTER_LENGTH、LENGTH、OCTET_LENGTH 、BIT_LENGTH、~~UNCOMPRESSED_LENGTH~~
以上函数唯一参数都为
字段名
或字符串
CHAR_LENGTH
等同于CHARACTER_LENGTH
:用于计算字符串的字符长度LENGTH
等同于OCTET_LENGTH
: 用于计算字符串的字节长度BIT_LENGTH
:用于计算字符串位数
在第一行中,“三体第二部 ”中一个汉字占三个字节,表一个字符,空格或数字字母也算一个字符,所以字符长度为6;
但空格或数字字母只占一个字节,所以字节长度为16(15 + 1);
位数没什么好说的,这里采用的是utf8,乘8;
2. CONCAT、CONCAT_WS、GROUP_CONCAT
CONCAT
与CONCAT_WS
都能拼接多个字符串。
CONCAT
与CONCAT_WS
的区别主要在于:- concat只是单纯的将各字符串连接出来,而concat_ws指定了唯一分隔符(第一个参数)
- 在mysql中,concat拼接数组中若有null值,则拼接字符串结果为null; 而concat_ws只会将null值的字符串忽略,最终拼接字符结果不会为null(除非拼接的全为null)。所以一般情况下能不使用concat就不使用concat,避免某字段值为null导致最终值为null
GROUP_CONCAT
要搭配GROUP BY来使用,将某一分组的字段的所有拼接一起,可排序
,可使用separator
指定分隔符。 与concat_ws一样,若某字段为null,最终结果只会忽略该字段,不会为null。
3. INSERT
INSERT(str,pos,len,newstr)
:
str表处理的初始字符串,pos表从str的第几位开始插入,len表插入的长度,newstr表插入的字符串。
- 可以理解为该函数为,把str的第pos位~len为替换为newstr
- 当pos超过str长度时,会直接返回str作为结果。
- 当len超过str长度时,会将pos位往后的替换为newstr
LAST_INSERT_ID(): 获取最后插入的ID值
4. LOWER、UPPER
字符串大小写的相互转换
5. LEFT、RIGHT
取字符串从最左/右的若干各字符
6. TRIM
TRIM(BOTH FROM str)
等同于TRIM(str)
::删除左右俩侧空格
TRIM(LEADING FROM str)
等同于LTRIM(str)
: 删除左侧空格
TRIM(TRAILING FROM str)
等同于RTRIM(str)
: 删除右侧空格
7. REPLACE
REPLACE(str,from_str,to_str)
: 将str字符串中的from_str字符串替换为to_str
- from_str和to_str不能为null,否则直接返回结果值为null。
8. SUBSTRING
SUBSTRING(str,pos)
等同于SUBSTRING(str from pos)
: 取str第pos个字符后的字符串
SUBSTRING(str,pos,len)
等同于SUBSTRING(str from pos for len)
: 取str第pos个字符后长度为len的字符串
- pos为正数时表从第pos个字符开始取
- pos为负数时表从倒数第pos个字符开始取
SUBSTRING_INDEX(str,delim,count)
: delim为分隔符,取str第count个分隔符前字符串
9. REVERSE
REVERSE(str)
:反转字符串
MySQL函数学习(一)-----字符串函数的更多相关文章
- Mysql截取和拆分字符串函数用法
Mysql截取和拆分字符串函数用法 截取字符串函数: SUBSTRING(commentid,9) 意思是:从第9个字符开始截取到最后.SUBSTRING的参数有三个,最后一个是截取的长度,默认是到结 ...
- xslt数值的函数与xslt字符串函数
以下是xslt数值的函数与xslt字符串函数的说明与参考示例. 1.xslt数值的函数:(1)fn:number(arg) 返回参数的数值.参数可以是布尔值.字符串或节点集. 示例:<xsl:v ...
- Excel函数学习:HLOOKUP函数
Excel函数学习:HLOOKUP函数 HLOOKUP函数查找表的第一行中的值,返回该表中与找到的值在同一列的另一个值. 什么情况下使用HLOOKUP? HLOOKUP函数可以在查找行中找到精确匹配值 ...
- mysql学习笔记--- 字符串函数、日期时间函数
一.常见字符串函数: 1.CHAR_LENGTH 获取长度(字符为单位) 2.FORMAT 格式化 3.INSERT 替换的方式插入 4.INSTR 获取位置 5.LEFT/RIGHT 取左 ...
- 【SQL】MySQL内置函数中的字符串函数和日期时间函数
字符串函数 --拼接字符串组成新的字符串 Select concat(‘A’,’B’); --返回字符串长度 Select length(“CAT”) --返回子字符串在字符串中首次出现的位置,没有返 ...
- C语言学习笔记--字符串函数
字符串函数 需要包含头文件#include<stdio.h> strlen strcmp strcpy strchr strstr strcasestr
- 数据库Mysql的学习(七)-自定义函数和流程控制
DELIMITER // (设置结束符 其实我也不太明白为啥要这样 记住就行把) CREATE FUNCTION ym_date(mydate DATE) (创建函数 函数名字(参数)) ) (指定函 ...
- Oracle截取字符串函数和查找字符串函数,连接运算符||
参考资料:Oracle截取字符串和查找字符串 oracle自定义函数学习和连接运算符(||) oracle 截取字符(substr),检索字符位置(instr) case when then else ...
- C/C++中经常使用的字符串处理函数和内存字符串函数
一. 字符处理函数 1. 字符处理函数:<ctype.h> int isdigit(int ch) ;//是否为数字,即ch是否是0-9中的字符 int ...
随机推荐
- windows10使用vscode+cmake编译c++代码
概述 本文将介绍 VScode + cmake 在 windows10上编译c++代码 前提: 我之前已经安装过VS2017, 故 编译将采用cl.exe. 开始之前 本文演示环境基于 windows ...
- 【剑指Offer】反转链表 解题报告(Python)
[剑指Offer]反转链表 解题报告(Python) 标签(空格分隔): LeetCode 题目地址:https://www.nowcoder.com/ta/coding-interviews 题目描 ...
- 【剑指Offer】树的子结构 解题报告(Python)
[剑指Offer]树的子结构 解题报告(Python) 标签(空格分隔): LeetCode 题目地址:https://www.nowcoder.com/ta/coding-interviews 题目 ...
- 1105 第K大的数
1105 第K大的数 基准时间限制:1 秒 空间限制:131072 KB 数组A和数组B,里面都有n个整数.数组C共有n^2个整数,分别是A[0] * B[0],A[0] * B[1] ...... ...
- MySQL 中的共享表空间与独立表空间
对于 InnoDB 存储引擎来说,它可以将每张表存放于独立的表空间,即tablename.ibd 文件:也可以将数据存放于 ibdata 的共享表空间,一般命名是 ibdataX,后面的 X 是一个具 ...
- css--深入理解z-index引发的层叠上下文、层叠等级和层叠顺序
前言 在编写css样式代码的时候,我们经常会遇到z-index属性的使用,我们可能只了解z-index能够提高元素的层级,并不知道具体是怎么实现的.本文就来总结一个由z-index 引发的层叠上下文和 ...
- 第四十六个知识点 在Sigma协议中,正确性,公正性和零知识性意味着什么
第四十六个知识点 在Sigma协议中,正确性,公正性和零知识性意味着什么 Sigma协议 Sigma协议是Alice想要向Bob证明一些东西的协议(Alice知道一些秘密).他们有下面的一般范式:Al ...
- 数据结构作业——P53算法设计题(6):设计一个算法,通过一趟遍历确定长度为n的单链表中值最大的结点
思路: 设单链表首个元素为最大值max 通过遍历元素,与最大值max作比较,将较大值附给max 输出最大值max 算法: /* *title:P53页程序设计第6题 *writer:weiyuexin ...
- Reproducing Kernel Hilbert Space (RKHS)
目录 概 主要内容 RKHS-wiki 概 这里对RKHS做一个简单的整理, 之前的理解错得有点离谱了. 主要内容 首先要说明的是, RKHS也是指一种Hilbert空间, 只是其有特殊的性质. Hi ...
- Boosting Adversarial Training with Hypersphere Embedding
目录 概 主要内容 代码 Pang T., Yang X., Dong Y., Xu K., Su H., Zhu J. Boosting Adversarial Training with Hype ...