mysql字符串函数大全(更新完成)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql字符串函数大全(更新完成)相关的知识,希望对你有一定的参考价值。


作者:陈业贵 华为云享专家 51cto(专家博主 明日之星 TOP红人) 阿里云专家博主

文章目录

  • ​​sql数据:​​
  • ​​ASCII(字段名)​​
  • ​​char_length(字段名)​​
  • ​​CHARACTER_length("cyg")​​
  • ​​concat​​
  • ​​concat_ws​​
  • ​​FIELD()​​
  • ​​FIND_IN_SET()​​
  • ​​format()​​
  • ​​INSERT()​​
  • ​​LOCATE​​
  • ​​LCASE()​​
  • ​​LEFT()​​
  • ​​LOWER()​​
  • ​​lpad()​​
  • ​​LTRIM​​
  • ​​mid()​​
  • ​​position()​​
  • ​​REPEAT()​​
  • ​​REPLACE()​​
  • ​​reverse()​​
  • ​​RIGHT()​​
  • ​​rpad()​​
  • ​​RTRIM()​​
  • ​​SPACE()​​
  • ​​strcmp()​​
  • ​​SUBSTR()​​
  • ​​SUBSTRING()​​
  • ​​SUBSTRING_INDEX()​​
  • ​​TRIM()​​
  • ​​UCASE()​​
  • ​​UPPER()​​

sql数据:

-- phpMyAdmin SQL Dump
-- version 4.8.5
-- https://www.phpmyadmin.net/
--
-- 主机: localhost
-- 生成日期: 2022-11-06 18:14:31
-- 服务器版本: 5.7.26
-- PHP 版本: 7.3.4

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET AUTOCOMMIT = 0;
START TRANSACTION;
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;

--
-- 数据库: `a`
--

-- --------------------------------------------------------

--
-- 表的结构 `customers`
--

CREATE TABLE `customers` (
`id` int(11) NOT NULL COMMENT 主键id,
`name` varchar(200) COLLATE utf8_unicode_ci NOT NULL COMMENT 名字,
`time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 时间
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

--
-- 转存表中的数据 `customers`
--

INSERT INTO `customers` (`id`, `name`, `time`) VALUES
(1, 12346789, 2022-11-06 08:16:11);

--
-- 转储表的索引
--

--
-- 表的索引 `customers`
--
ALTER TABLE `customers`
ADD PRIMARY KEY (`id`);

--
-- 在导出的表使用AUTO_INCREMENT
--

--
-- 使用表AUTO_INCREMENT `customers`
--
ALTER TABLE `customers`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 主键id, AUTO_INCREMENT=2;
COMMIT;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

ASCII(字段名)

select ASCII(name) as  numname FROM Customers;

解析:as是起别名的意思。FROM Customers是哪一个表.select 是查询操作.ASCII(name)是查询name这个字段第一个字母的 ASCII 码.1的ASCII是49没错.

mysql字符串函数大全(更新完成)_字段名

char_length(字段名)

select char_length(cyg) as length;

解析:返回cyg这个字符串的字符数量.以1为起点

mysql字符串函数大全(更新完成)_sql_02

CHARACTER_length(“cyg”)

SELECT CHARACTER_length("cyg") AS length666;

解析:返回cyg这个字符串的字符数量.以1为起点

mysql字符串函数大全(更新完成)_字段名_03

concat

SELECT concat("sql","mysql") as concat;

解析:合并字符串

mysql字符串函数大全(更新完成)_字符串_04

concat_ws

合并字符串。以-为分割符

SELECT concat_ws("-","SQL","mysql") as concat_ws;

mysql字符串函数大全(更新完成)_字符串_05

FIELD()

SELECT FIELD("c", "a", "b", "c", "d", "e");

解析:找到第一个字符c在"abcde"中第一次出现的位置.从下标0开始计算(就是从第一个c开始计算啦)

mysql字符串函数大全(更新完成)_sql_06

FIND_IN_SET()

SELECT FIND_IN_SET("c", "a,b,c,d,e");

解析:字符串c在abcde中第一次出现的位置.从1开始计算.(就是从a开始计算啦)

mysql字符串函数大全(更新完成)_sql_07

format()

SELECT format(250500.5634, 2);

mysql字符串函数大全(更新完成)_sql_08

INSERT()

SELECT INSERT("google.com", 1, 6, "runoob");

解析:从字符串第一个位置开始的 6 个字符替换为 runoob:

mysql字符串函数大全(更新完成)_字段名_09

LOCATE

SELECT LOCATE(st,myteststring);

解析:从第二个参数中查找第一个参数中第一次出现的位置(从1开始查找.)

mysql字符串函数大全(更新完成)_字符串_10

LCASE()

SELECT LCASE("CYG");

解析:把大写转换成小写

mysql字符串函数大全(更新完成)_sql_11

LEFT()

SELECT LEFT(runoob,2);

解析:截取第一个参数中的开头的两个字符

mysql字符串函数大全(更新完成)_字段名_12

LOWER()

SELECT LOWER(RUNOOB);

解析:把大写转换成小写

mysql字符串函数大全(更新完成)_sql_13

lpad()

SELECT lpad(abc,5,xx);

解析:将字符串 xx 填充到 abc 字符串的开始处:

mysql字符串函数大全(更新完成)_字段名_14

LTRIM

SELECT LTRIM("    RUNOOB") AS LeftTrimmedString;

解析:去掉字符串 RUNOOB开始处的空格。

mysql字符串函数大全(更新完成)_字符串_15

mid()

select mid("RUNOOB", 2, 3) AS ExtractString;

解析:从字符串 RUNOOB 中的第 2 个位置截取 3个 字符:(从1开始计算)

mysql字符串函数大全(更新完成)_字符串_16

position()

SELECT position(b in "abc");

解析:b在abc的哪一个位置。在上图是第二个位置,所以输出2

mysql字符串函数大全(更新完成)_字段名_17

REPEAT()

SELECT REPEAT(runoob,3);

解析:把第一个参数中的runoob重复三次

mysql字符串函数大全(更新完成)_字符串_18

REPLACE()

SELECT REPLACE(abc,a,x);

解析:把第一个参数中的a替换成x

mysql字符串函数大全(更新完成)_字符串_19

reverse()

SELECT   reverse("abc");

解析:把abc倒过来输出

mysql字符串函数大全(更新完成)_字段名_20

RIGHT()

SELECT RIGHT(runoob,2);

解析:返回字符串 s 的后 2个字符

mysql字符串函数大全(更新完成)_sql_21

rpad()

SELECT rpad(abc,5,xx);

解析:abc的结尾添加xx。使字符串长度达到5个。

mysql字符串函数大全(更新完成)_sql_22

RTRIM()

SELECT RTRIM("RUNOOB     ") AS RightTrimmedString;

去掉字符串结尾处的空格

mysql字符串函数大全(更新完成)_字段名_23

SPACE()

SELECT SPACE(10);

解析:返回 10 个空格:

mysql字符串函数大全(更新完成)_sql_24

strcmp()

SELECT strcmp("runoob", "runoob");

解析:
比较字符串 s1 (第一个参数)和 s2(第二个参数),如果 s1 与 s2 相等返回 0 ,如果 s1>s2 返回 1,如果 s1<s2 返回 -1

mysql字符串函数大全(更新完成)_字符串_25

SUBSTR()

SELECT SUBSTR("RUNOOB", 2, 3) AS ExtractString;

解析:从字符串 RUNOOB 中的第 2 个位置截取 3个 字符:

mysql字符串函数大全(更新完成)_sql_26

SUBSTRING()

SELECT SUBSTRING("RUNOOB", 2, 3) AS ExtractString; -- UNO

解析:从字符串 RUNOOB 中的第 2 个位置截取 3个 字符

mysql字符串函数大全(更新完成)_字符串_27

SUBSTRING_INDEX()

SELECT SUBSTRING_INDEX(a*b,*,1);

解析:如果 number 是正数,返回第 number 个字符左边的字符串。
如果 number 是负数,返回第(number 的绝对值(从右边数))个字符右边的字符串。

mysql字符串函数大全(更新完成)_sql_28

SELECT SUBSTRING_INDEX(a*b,*,-1);

mysql字符串函数大全(更新完成)_字段名_29

TRIM()

SELECT TRIM(    RUNOOB    ) AS TrimmedString;

解析:去掉字符串 RUNOOB 的首尾空格

mysql字符串函数大全(更新完成)_字段名_30

UCASE()

SELECT UCASE("runoob");

解析:将字符串 runoob 转换为大写

mysql字符串函数大全(更新完成)_字段名_31

UPPER()

SELECT UPPER("runoob");

解析:将字符串 runoob 转换为大写

mysql字符串函数大全(更新完成)_sql_32


以上是关于mysql字符串函数大全(更新完成)的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 高级函数大全(更新完成)

首尾相连求最大子数组

MySQL函数大全

mysql 数据处理函数汇总

课堂作业:首尾相连求最大子数组

MySQL函数大全 及用法示例