【问题标题】:SQL How to capitalize only one wordSQL如何只大写一个单词
【发布时间】:2020-08-12 19:39:39
【问题描述】:

我希望将字符串中的第一个单词大写。第一个单词的长度可以不同。一个例子是“abc Company”,我只想将“abc”大写,其余部分保持原样。如何在 SQL Server 中做到这一点?

【问题讨论】:

  • 查找第一次出现空格的索引(请参阅 CHARINDEX),然后使用 LEFT / RIGHT 按该空格分割字符串。然后连接这两个部分,但将 UPPER 应用于左侧函数。试一试,如果遇到困难就回来。
  • 你也应该很清楚——你只是在寻找这个具体的例子吗?哪个可能只适用于单行?或者你想进一步概括它?
  • 是的,你是对的,我应该更具体地说明我的问题和其他可能的情况。无论哪种方式,感谢您的帮助,非常感谢,我想通了。
  • 如果您的解决方案与已经提供的不同,请添加您自己的解决方案。如果不是,请接受提供的那个。现在澄清你的问题还为时不晚。

标签: sql-server uppercase


【解决方案1】:

这是我想出的解决方案:

concat(upper(left(companyname, charindex(' ',companyname)-1)),' ',substring(companyname,CHARINDEX(' ',companyname)+1,Len(companyname))) as fullname

【讨论】:

  • 只是好奇,我的回答对您的解决方案有帮助吗?
  • 是的,我没有考虑将它们连接起来。
猜你喜欢
  • 2020-07-16
  • 1970-01-01
  • 1970-01-01
  • 2021-12-07
  • 2015-01-11
  • 1970-01-01
  • 2011-07-29
  • 1970-01-01
  • 2020-06-07
相关资源
最近更新 更多