⚡ 编程实验室🏗️ HTML🎨 CSS⚡ JavaScript🐍 Python🗄️ SQL☕ Java⚛️ React💚 Vue🟢 Node.js⚙️ C语言🐘 PHP🐹 Go🔷 TypeScript🐬 MySQL🔧 C++🎯 C#🦀 Rust🅱️ Bootstrap💡 jQuery🎸 Django🍃 MongoDB👗 Sass🎪 Kotlin📊 R语言📋 XML📊 Excel🐘 PostgreSQL🐳 Docker🅰️ Angular🎮 游戏🏠 网站首页

SQL 字符串函数

学习 UPPER/LOWER/LENGTH/CONCAT/SUBSTR · 难度:入门 · +10XP

SQL 字符串函数

SQL 字符串函数 — 文本处理的利器

学习前的准备

你需要一个 MySQL 数据库环境。字符串函数让你能在数据库中直接处理文本。

CONCAT() 和 CONCAT_WS()

-- CONCAT:连接多个字符串
SELECT CONCAT(last_name, first_name) AS full_name FROM users;

-- CONCAT_WS:用分隔符连接(自动跳过 NULL) SELECT CONCAT_WS('-', last_name, first_name, phone) FROM users;

SUBSTRING() 和 LEFT()/RIGHT()

SET @text = 'Hello, MySQL!';
SELECT SUBSTRING(@text, 1, 5) AS part1;    -- 'Hello'
SELECT SUBSTRING(@text, 8, 5) AS part2;    -- 'MySQL'
SELECT LEFT(@text, 5) AS left5;            -- 'Hello'
SELECT RIGHT(@text, 6) AS right6;          -- 'MySQL!'

-- 隐藏手机号中间四位 SELECT CONCAT( LEFT(phone, 3), '****', RIGHT(phone, 4) ) AS masked_phone FROM users;

大小写转换和修剪空白

SELECT UPPER('hello') AS up;     -- 'HELLO'
SELECT LOWER('WORLD') AS low;    -- 'world'
SELECT TRIM('   hello   ') AS t;    -- 'hello'
SELECT LTRIM('   hello   ') AS l;   -- 'hello   '
SELECT RTRIM('   hello   ') AS r;   -- '   hello'

REPLACE() 和 CHAR_LENGTH()

SET @sentence = '我爱编程,编程使我快乐';
SELECT REPLACE(@sentence, '编程', '写代码');
-- 我爱写代码,写代码使我快乐

SELECT CHAR_LENGTH('你好世界'); -- 4(4个汉字) SELECT LENGTH('你好世界'); -- 12(UTF-8字节数)

字符串函数速查表

函数作用
CONCAT(a,b)连接字符串
CONCAT_WS(sep,...)用分隔符连接
SUBSTRING(s,p,l)截取子串
LEFT/RIGHT(s,n)左右取n个字符
UPPER/LOWER(s)大小写转换
TRIM/LTRIM/RTRIM(s)去除空白
REPLACE(s,old,new)替换子串
CHAR_LENGTH(s)字符数
LOCATE(sub,str)查找子串位置

小结

SQL 的字符串函数让你在数据库层面处理文本。CONCAT 拼接,SUBSTRING/LEFT/RIGHT 截取,UPPER/LOWER 转换大小写,TRIM 去空白,REPLACE 做替换,CHAR_LENGTH 数字符。在 SQL 查询中直接处理字符串比把数据拉到应用层再处理要高效得多。

Ctrl+Enter
🚀 升级VIP
解锁全部课程+AI助手

🏆 学习排行

加载中...

📊 统计

📖 146 篇
0 完成
🔥 0