尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

SQL必会的常用函数(三)文本函数

SQL必会的常用函数(三)文本函数 SQL文本函数详解一、基础查询函数1. LENGTH / LEN - 获取字符串长度-- MySQL SELECT LENGTH(Hello World); -- 返回 11 -- SQL Server SELECT LEN(Hello World); -- 返回 112. CONCAT - 字符串拼接-- 标准语法所有数据库通用 SELECT CONCAT(Hello, , World); -- Hello World -- MySQL也支持 SELECT Hello || || World; -- 需要设置SQL模式 -- SQL Server用 SELECT Hello World;3. UPPER / LOWER - 大小写转换SELECT UPPER(hello); -- HELLO SELECT LOWER(WORLD); -- world二、截取与定位函数1. SUBSTRING / SUBSTR - 截取子串-- 通用语法SUBSTRING(字符串, 起始位置, 长度) SELECT SUBSTRING(Hello World, 7, 5); -- World -- MySQL SELECT SUBSTR(Hello World, 7, 5); -- 起始位置为负数表示从右侧开始 SELECT SUBSTRING(Hello World, -5, 5); -- World2. LEFT / RIGHT - 从两端截取SELECT LEFT(Hello World, 5); -- Hello SELECT RIGHT(Hello World, 5); -- World3. POSITION / CHARINDEX - 查找位置-- MySQL SELECT POSITION(World IN Hello World); -- 7 -- 从位置5开始查找返回的l的位置 SELECT LOCATE(l, Hello World, 5); -- 10三、修剪与填充函数1. TRIM - 去除空格SELECT TRIM( Hello World ); -- Hello World SELECT LTRIM( Hello); -- Hello SELECT RTRIM(World ); -- World -- 去除指定字符 SELECT TRIM(BOTH x FROM xxHelloxx); -- Hello SELECT TRIM(LEADING x FROM xxHello); -- Hello SELECT TRAILING同理2. LPAD / RPAD - 填充字符串-- MySQL SELECT LPAD(Hello, 10, *); -- *****Hello SELECT RPAD(Hello, 10, -); -- Hello----- -- SQL Server需要自定义或用FORMAT3. REPLACE - 替换字符SELECT REPLACE(Hello World, World, SQL); -- Hello SQL -- 多字符替换示例 SELECT REPLACE(REPLACE(a,b,c., ,, ;), ., ); -- a;b;c四、高级处理函数1. REVERSE - 反转字符串SELECT REVERSE(Hello); -- olleH -- 实用场景查找邮箱域名最后一部分 SELECT REVERSE(SUBSTRING_INDEX(REVERSE(userexample.com), ., 1));2. SPLIT_PART / SUBSTRING_INDEX - 分割字符串-- MySQL SELECT SUBSTRING_INDEX(apple,banana,orange, ,, 2); -- apple,banana SELECT SUBSTRING_INDEX(apple,banana,orange, ,, -1); -- orange3. REGEXP_REPLACE - 正则替换-- 删除所有数字保留字母 -- MySQL 8.0 SELECT REGEXP_REPLACE(abc123def456, [0-9], ); -- abcdef -- 提取所有数字删除字母 -- MySQL 8.0 SELECT REGEXP_REPLACE(abc123def456, [^0-9], ); -- 123456
返回列表