长沙市建设工程质量安全监督站官方网站,域名备案了 怎么建设网站,中国广东手机网站建设,宣传册设计与制作素材大家好#xff0c;我是空空star#xff0c;本篇带大家了解一道简单的力扣sql练习题。 文章目录前言一、题目#xff1a;1667. 修复表中的名字二、解题1.正确示范①提交SQL运行结果2.正确示范②提交SQL运行结果3.正确示范③提交SQL运行结果4.正确示范④提交SQL运行结果5.其他… 大家好我是空空star本篇带大家了解一道简单的力扣sql练习题。 文章目录前言一、题目1667. 修复表中的名字二、解题1.正确示范①提交SQL运行结果2.正确示范②提交SQL运行结果3.正确示范③提交SQL运行结果4.正确示范④提交SQL运行结果5.其他总结前言 一、题目1667. 修复表中的名字 表 Users -------------------------
| Column Name | Type |
-------------------------
| user_id | int |
| name | varchar |
------------------------- user_id 是该表的主键。 该表包含用户的 ID 和名字。名字仅由小写和大写字符组成。 编写一个 SQL 查询来修复名字使得只有第一个字符是大写的其余都是小写的。 返回按 user_id 排序的结果表。 查询结果格式示例如下。 输入
Users table:
----------------
| user_id | name |
----------------
| 1 | aLice |
| 2 | bOB |
----------------
输出
----------------
| user_id | name |
----------------
| 1 | Alice |
| 2 | Bob |
----------------
二、解题
1.正确示范①
提交SQL
select user_id,
concat(upper(left(name,1)),lower(right(name,length(name)-1))
) name
from Users
order by user_id;运行结果 2.正确示范②
提交SQL
select user_id,
concat(upper(left(name,1)),lower(right(name,char_length(name)-1))
) name
from Users
order by user_id;运行结果 3.正确示范③
提交SQL
select user_id,
concat(upper(substr(name,1,1)),lower(substr(name,2))) name
from Users
order by user_id;运行结果 4.正确示范④
提交SQL
select user_id,
concat(upper(substring(name,1,1)),lower(substring(name,2))) name
from Users
order by user_id;运行结果 5.其他 总结 整体思路就是把第一个字母通过upper大写,其余字母通过lower小写最后再通过concat拼接起来。 正确示范①思路 通过left(name,1)取第一个字母 通过right(name,length(name)-1)取其余字母 正确示范②思路 将示范①中的length改为char_length 正确示范③思路 通过substr(name,1,1)取第一个字母 通过substr(name,2)取其余字母 正确示范④思路 通过substring(name,1,1)取第一个字母 通过substring(name,2)取其余字母 知识点 1.upper()和lower() upper将字符串中的所有字母转换为大写而lower将字符串中的所有字母转换为小写。 2.left()和right() 左侧截取和右侧截取函数可以用于截取字符串的一部分。left函数返回字符串左侧指定长度的字符right函数返回字符串右侧指定长度的字符。例如left(‘csdn’, 2)将返回’cs’right(‘csdn’, 2)将返回’dn’。 3.length()和char_length() length()函数返回的是字符串中的字节数而char_length()函数返回的是字符串中的字符数。在大多数情况下这两个函数返回的结果是相同的但是当字符串中包含多字节字符时它们的结果可能会不同。 4.substr()、substring()和substrb() substr()函数的语法是substr(str, start, length)其中str是要截取的字符串start是起始位置length是要截取的长度。而substring()函数的语法是substring(str, start, length)其中str、start和length的含义与substr()相同两者可以相互替换。substrb函数是按照字节来截取字符串而substr函数是按照字符来截取字符串。如果字符串中包含中文等多字节字符那么使用substr函数可能会出现截取不准确的情况此时应该使用substrb函数来截取字符串。