You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写SQL查询实现姓名首3字母大写其余小写的格式转换?

SQL实现姓名前3位大写、剩余字母小写的格式转换

针对将姓名转换为前3个字母大写、剩余字母小写的需求(例如输入Richard输出RIChard),以下是不同主流数据库的实现语句:

MySQL/MariaDB

使用UPPER()、LEFT()、LOWER()和SUBSTRING()函数组合:

SELECT CONCAT(
    UPPER(LEFT(name, 3)),
    LOWER(SUBSTRING(name, 4))
) AS formatted_name
FROM your_table;
  • LEFT(name, 3):提取姓名前3个字符
  • UPPER():将前3个字符转为大写
  • SUBSTRING(name, 4):提取从第4位开始的剩余字符
  • LOWER():将剩余字符转为小写
  • CONCAT():拼接两部分得到最终格式

PostgreSQL

PostgreSQL字符串索引从1开始,语法与MySQL类似:

SELECT CONCAT(
    UPPER(LEFT(name, 3)),
    LOWER(SUBSTRING(name FROM 4))
) AS formatted_name
FROM your_table;

也可以用RIGHT()函数替代SUBSTRING(需计算剩余字符长度):

SELECT CONCAT(
    UPPER(LEFT(name, 3)),
    LOWER(RIGHT(name, LENGTH(name) - 3))
) AS formatted_name
FROM your_table;

SQL Server

使用UPPER()、LEFT()、LOWER()和SUBSTRING():

SELECT CONCAT(
    UPPER(LEFT(name, 3)),
    LOWER(SUBSTRING(name, 4, LEN(name)))
) AS formatted_name
FROM your_table;

示例验证

若表中存在记录name = 'Richard',执行上述语句后,formatted_name的结果为RIChard,完全符合需求。

内容的提问来源于stack exchange,提问作者Sanal Kumar Krishna

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 15:06:22