【DataBase】MySQL 07 SQL函数 单行函数其一 字符函数
SQL函数的概念
-- SQL函数
-- 概念:类似Java的方法,将已经定义好的不再改变的逻辑语句封装在函数体内,对外提供方法的标识
-- 隐藏了实现细节,提高功能的可重用
-- SELECT 函数名称(实参列表) [FROM 表名];
-- 分类: 单行函数,分组函数
-- 字符函数,数字函数,日期函数,其他函数
统计字符的字节个数
注意是字节个数
# LENGTH() 计数参数字符串的字节个数
SELECT LENGTH('杰哥不要啊'); -- 中文按 [UTF-8]3个字节的组合,[GBK]2个字节组合 -- 查看当前表的字符集
SHOW VARIABLES LIKE '%char%';
拼接参数列表中的字符
# CONCAT() 拼接参数字符
SELECT CONCAT(`first_name`," ",`last_name`) FROM `employees`;
转换全大写,全小写
# UPPER(),LOWER() 将参数字符转全大小写
-- 将姓大写,名小写,然后拼接
SELECT CONCAT(UPPER(`last_name`)," ",LOWER(`first_name`)) FROM `employees`;
字符片段
# SUBSTR(),SUBSTRING() -- 从索引开始截取字符串,起始位置是从参数开始,包括参数
-- 1个参数就表示截取的起始位置,直接到结束位置
SELECT SUBSTR("大苏打的发射点",5) AS sub1; -- MySQL的字符索引是从1开始的
-- 2个参数就表示截取的起始位置,直到实参的结束位置 [字符长度]
SELECT SUBSTR("大苏打的发射点",1,3) AS sub2; 开始位置到结束位置,包括结束位置的字符 -- 案例,姓名中首字符大写,其他字符小写,然后用_拼接,显示出来
SELECT CONCAT(
UPPER(SUBSTR(`last_name`,1,1)),
LOWER(SUBSTR(`last_name`,2))
) AS NAME
FROM `employees`;
获取 参数字符2 在 参数字符1 首次出现的位置
# INSTR(str1,str2) 查找字符串2在字符串1的首次出现的位置,如果未找到返回0
SELECT INSTR("今天的风景真好啊",'好');
清除两边的空格,和指定字符的两边清除
# TRIM() 消除两边空格 ,LTRIM() RTRIM() 左右空格消除
SELECT " ABC ", TRIM(" ABC "); # TRIM(str1 FROM str2) 消除str2左右两边的str1
SELECT TRIM("s" from "ssssssssAsBCsDssssssssssssssss");
SELECT TRIM("ss" FROM "ssssssssAsBCsDssssssssssssssss"); -- 注意区别
限定字符长度并填充
# LPAD(str1,length,str2) 规定字符长度为length,如果str1小于实参的长度,则让str2填充剩余字符位[左填充]
SELECT LPAD('HAHA',12,'*') AS LPAD;
# RPAD(str1,length,str2) 规定字符长度为length,如果str1小于实参的长度,则让str2填充剩余字符位[右填充]
SELECT RPAD('HAHA',12,'*') AS LPAD;
替换字符串
# REPLACE(str1,str2,str3) 在str1中,使用str3替换str2
SELECT REPLACE('啊实打实大苏打实打实的','实','NO');
【DataBase】MySQL 07 SQL函数 单行函数其一 字符函数的更多相关文章
- mysql中sql语句中常见的group_concat()函数意思以及用法,oracle中与其一样的功能函数是wmsys.wm_concat()
1.group_concat(),手册上说明:该函数返回带有来自一个组的连接的非NULL值的字符串结果.比较抽象,难以理解. 通俗点理解,其实是这样的:group_concat()会计算哪些行属于同一 ...
- Importing/Indexing database (MySQL or SQL Server) in Solr using Data Import Handler--转载
原文地址:https://gist.github.com/maxivak/3e3ee1fca32f3949f052 Install Solr download and install Solr fro ...
- oracle 内置函数(二)字符函数
主要函数: 大小写转换函数 获取子字符串函数(字符串截取) 获取字符串长度函数 字符串连接函数 去除子字符串函数 字符替换函数 字符串出现次数 字符串按照特定符号拆分多行 一.大小写转换 1.uppe ...
- 5.单行函数,多行函数,字符函数,数字函数,日期函数,数据类型转换,数字和字符串转换,通用函数(case和decode)
1 多行函数(理解:有多个输入,但仅仅输出1个结果) SQL>select count(*) from emp; COUNT(*) ------------- 14 B 字符函数Lowe ...
- MySql 插入10位以上长度的字符报错or截断
当a字段为int类型时: 如果用MyBatis向MySql插入10个字符以上长度的字符串,则会报错. 如果直接在MySql中用sql语句插入10个字符以上长度的字符串,则会变成最大的int类型数值:2 ...
- MySQL 进阶4 SQL常见函数: 字符函数/数学函数/日期函数/流程控制函数(if/case)
# 进阶4 SQL常见函数 分类: 1/单行函数: 字符函数: concat(),length(),ifnull(__,default) ,instr(), trim(),upper(),lower( ...
- mysql的sql分页函数limit使用 (转)
http://www.cnblogs.com/beijingstruggle/p/5631603.html mysql的sql分页函数limit使用 My sql数据库最简单,是利用mysql的LIM ...
- (2.16)Mysql之SQL基础——函数
(2.16)Mysql之SQL基础——函数 关键词:mysql函数,mysql自定义函数,mysql聚合函数,mysql字符串函数,mysql数值函数 1.自定义函数 -- (1)一般形式 creat ...
- Mysql与Sql server,Sum函数跟Count函数
两者均是统计类函数,都不计算NULL字段!!! 单纯计算行数的话,count的效率比sum的效率高 MySQL SUM()函数介绍 SUM()函数用于计算一组值或表达式的总和,SUM()函数的语法如下 ...
- (2.17)Mysql之SQL基础——日期函数
关键词:mysql时间函数,mysql日期函数 [1]curdate():返回当前日期(2019-03-06),curdate()+0 返回(20190306) [2]curtime():返回当前时间 ...
随机推荐
- SpringBoot系列(二) 环境搭建,创建我的第一个程序HelloWord。
环境准备: jdk1.8:java version "1.8.0_231",详见链接 maven3.x:maven3.3以上版本,详见链接 IDEA2021:IntelliJ ID ...
- INFINI Gateway 如何防止大跨度查询
背景 业务每天生成一个日期后缀的索引,写入当日数据. 业务查询有时会查询好多天的数据,导致负载告警. 现在想对查询进行限制--只允许查询一天的数据(不限定是哪天),如果想查询多天的数据就走申请. 技术 ...
- go 1.6 废弃 io/ioutil 包后的替换函数
go 1.6 废弃 io/ioutil 包后的替换函数 io/ioutil 替代 ioutil.ReadAll -> io.ReadAll ioutil.ReadFile -> os.R ...
- UDP端口探活的那些细节
一 背景 商业客户反馈用categraf的net_response插件配置了udp探测, 遇到报错了,如图 udp是无连接的,无法用建立连接的形式判断端口. 插件最初的设计是需要配置udp的发送字符 ...
- vue柱状图
原型 1 <template> 2 <!-- 上下柱状图 --> 3 <div ref="overallSituation" :style=" ...
- 项目管理--PMBOK 读书笔记(8)【项目质量管理】
1.数据表现-流程图: 流程图也称为过程图,用来显示在一个或者多个输入转化为一个或者多个输入出的过程. 2.质量工具图比较: 发现问题:控制图(七点规则等).趋势图 寻找原因:因果图.流程图 分析原因 ...
- Java对称加解密算法AES
Java对称加解密算法AES import org.apache.commons.codec.binary.Base64; import org.apache.commons.lang3.String ...
- 部署jar项目服务命令
部署jar项目服务命令首先使用jenkins打包jar history | grep java 查看ps aux | grep 服务关键字关闭进程,否则启动的时候报错:java.net.BindExc ...
- 03-vi和vim编辑器的使用
背景 vim是一个类似于vi的著名的功能强大.高度可定制的文本编辑器. vim在vi的基础上改进和增加了很多特性. 如今vi已经是最受IT届欢迎的编辑器之一. 不止在Linux中,主流IDE都支持vi ...
- Project Euler 1~10 野蛮题解
这些题都比较简单就不贴代码和做法了 23333333 具体到做法就是枚举暴力,这十题中可能难一点地方的就是筛质数表,可以学习一下 Eratosthenes 筛法或者是欧拉筛. 如果您不会前十题建议好好 ...