mysql - 将名字和姓氏与姓氏全部大写连接起来

标签 mysql sql

我需要进行一个 mysql 查询,以大写形式显示与姓氏相连的所有名字,名字和姓氏之间有一个空格。

我在自动柜员机上有什么:

SELECT CONCAT_WS(" ", `First_Name`, `Last_Name`) AS Name from tblDetails

我是 mysql 新手,我不知道把 UPPER 放在哪里,似乎在任何地方都不起作用。

我还需要执行与上面相同的操作,但根据性别添加 Mr 或 Ms 前缀。

最佳答案

您可以使用 caseconcat 根据性别添加前缀,并且 upper 可以应用于 First_Name、Last_Name 列值,然后使用 concat_ws 在它们之间添加一个空格。

SELECT  CONCAT ( (case when gender ='M' 
                       then  'Mr '
                       else 'Ms '
                       end
                  ),
             CONCAT_WS(" ", UPPER(First_Name), UPPER(Last_Name)) 
               )
       AS Name 
from tblDetails

关于mysql - 将名字和姓氏与姓氏全部大写连接起来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27209631/

相关文章:

mysql - 如何清理 C 中的 SQL 查询?

sql - presto sql过滤器过去24小时

SQL 更新导致死锁

sql - 与删除和重新创建索引相比,禁用和重新启用索引有什么区别?

mysql - 如何使用变量表修复 'subquery returns more than 1 row'

mysql - Rails with mysql无法创建json类型列

PHP选择多个数组表

php - 从位于变量内的 headless 数组中提取值,Laravel Eloquent 查询结果

sql - 如何编写可能来自不同表的 "belongs to"关联?

sql - 坚持关系代数中的逻辑 SQL 查询优化(或在 WHERE 中)