返回介绍

solution / 1600-1699 / 1667.Fix Names in a Table / README

发布于 2024-06-17 01:03:16 字数 1518 浏览 0 评论 0 收藏 0

1667. 修复表中的名字

English Version

题目描述

表: Users

+----------------+---------+
| Column Name  | Type  |
+----------------+---------+
| user_id    | int   |
| name       | varchar |
+----------------+---------+
user_id 是该表的主键(具有唯一值的列)。
该表包含用户的 ID 和名字。名字仅由小写和大写字符组成。

 

编写解决方案,修复名字,使得只有第一个字符是大写的,其余都是小写的。

返回按 user_id 排序的结果表。

返回结果格式示例如下。

 

示例 1:

输入:
Users table:
+---------+-------+
| user_id | name  |
+---------+-------+
| 1     | aLice |
| 2     | bOB   |
+---------+-------+
输出:
+---------+-------+
| user_id | name  |
+---------+-------+
| 1     | Alice |
| 2     | Bob   |
+---------+-------+

解法

方法一

SELECT
  user_id,
  CONCAT(UPPER(LEFT(name, 1)), LOWER(SUBSTRING(name, 2))) AS name
FROM
  users
ORDER BY
  user_id;

方法二

SELECT
  user_id,
  CONCAT(
    UPPER(LEFT(name, 1)),
    LOWER(SUBSTRING(name, 2, DATALENGTH(name)))
  ) AS name
FROM
  users
ORDER BY
  user_id;

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文