效率最高:在第一个空格后切断varchar?

时间:2018-03-15 20:56:52

标签: sql-server tsql varchar

在第一个空格之后切断varchar的最有效方法是什么,即给定'FIRST_STRING SECOND_STRING THIRD_STRING',它应该返回'FIRST_STRING'?这将在数​​千行的潜在数量上运行。

2 个答案:

答案 0 :(得分:5)

注意+' '这将捕获任何单个词

示例

Declare @S varchar(max) = 'FIRST_STRING SECOND_STRING THIRD_STRING'

Select left(@S,charindex(' ',@S+' ')-1)

<强>返回

FIRST_STRING

答案 1 :(得分:1)

declare @str nvarchar(max) = 'FIRST_STRING SECOND_STRING THIRD_STRING';

select left(@str, charindex(' ', @str) - 1)
GO
| (No column name) |
| :--------------- |
| FIRST_STRING     |

dbfiddle here