从查询中获得不同的值

时间:2019-11-11 21:35:11

标签: sql sql-server

我在sql服务器上。

我的目标是根据名称字段中的第一个空格来解析名称字段 然后获得明确的姓名列表

我已经用下面的代码解析了名字

SELECT substring(name, 1, CHARINDEX(' ' , name))
From mytable

从上述查询结果中获取名称的唯一列表时遇到麻烦。 有人会告诉我这样做的正确语法是什么吗?

例如

如果mytable具有以下数据

enter image description here

我希望与众不同的最终查询输出看起来像这样

迈克 爱德华

1 个答案:

答案 0 :(得分:2)

您要distinct吗?

select distinct substring(name, 1, charindex(' ' , name) - 1) name from mytable

注意:除非您还希望在名称后捕获尾随空格,否则需要在substring()中的空格索引之前返回一个字符。

Demo on DB Fiddle

| name   |
| :----- |
| Edward |
| Mike   |