sql - 自己获取名字和姓氏
问题描述
我需要帮助才能分别获取名字和姓氏。
该字段是 [FullName]:Halsey S Dunn
我可以单独获得名字,但不能单独获得姓氏:
这是我的名字和姓氏代码:
,SUBSTRING([FullName], 1, CHARINDEX(' ', [FullName]) - 1) AS [FirstName]
,SUBSTRING(
[FullName],1 + CHARINDEX(' ', [FullName]),LEN([FullName])) as [LastName]
我的结果需要是:
FirstName- Halsey
LastName- Dunn
解决方案
假设您使用的是 SQL Server,您可以尝试以下操作:
例子
create table people (fullname varchar(100));
insert into people values ('Harvey S Dunn');
insert into people values ('Tony Mony');
SQL
SELECT
left(fullname, charindex(' ', fullname)) as firstname,
reverse(
right(
reverse(fullname),
len(fullname) - nullif(charindex(' ', reverse(fullname)),0)
)
) as fullname_without_lastname,
reverse(
left(
reverse(fullname),
charindex(' ', reverse(fullname)) - 1
)
) as lastname
from people;
结果
名 fullname_without_lastname 姓 哈维 哈维小号 邓恩 托尼 托尼 钱
您可以根据自己的方便进行调整的工作示例
https://dbfiddle.uk/?rdbms=sqlserver_2019&fiddle=ed30499b6651f5bfdf5902ba3ee48747
推荐阅读
- mysql - 我想知道mariaDB EOF
- json - Oracle 到 cassandra 数据比较
- javascript - 如何创建一个使用一次后变量值发生变化的函数?
- c++ - modify() 在迭代期间提升多索引键
- c - 使用信号量在三个进程之间共享内存
- javascript - 如何使搜索字符串像对象数组上的 IN 过滤器一样进行搜索
- javascript - 如何在reactjs中将组件调用到花药中
- java - 在电子邮件正文中添加按钮(java)
- python - 如何通过pycharm 2020.1.1(python 3.8)中的代码显示openpyxl版本?
- json - 您如何制作不同的 JSON 键绑定而不仅仅是数字?(例如:“BackKey”:96,我想将其更改为喜欢左箭头键)