Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在SQL Server中,如何获取特定字符串,直到从字符串中提取特定字符?_Sql_Sql Server_String - Fatal编程技术网

在SQL Server中,如何获取特定字符串,直到从字符串中提取特定字符?

在SQL Server中,如何获取特定字符串,直到从字符串中提取特定字符?,sql,sql-server,string,Sql,Sql Server,String,我有这个字符串: 废话废话-2389023823 我想抓住仪表板左边的所有东西: “废话废话” 我该怎么做呢 我假设我必须以某种方式使用ChARINDEX()+LEN()执行LEFT(),但我遇到了困难 感谢您的帮助。声明@string varchar(50) set@string='Blah Blah Blah-2389023823' 选择子字符串(@string,1,NULLIF(CHARINDEX('-',@string)-1,-1))作为结果字符串,您只需要使用,并且: 在SQL Ser

我有这个字符串:

废话废话-2389023823

我想抓住仪表板左边的所有东西:

“废话废话”

我该怎么做呢

我假设我必须以某种方式使用
ChARINDEX()+LEN()
执行
LEFT()
,但我遇到了困难

感谢您的帮助。

声明@string varchar(50) set@string='Blah Blah Blah-2389023823'

选择子字符串(@string,1,NULLIF(CHARINDEX('-',@string)-1,-1))作为结果字符串,您只需要使用,并且:

在SQL Server中将RTRIM()和Left()与CHARINDEX()一起使用

RTRIM(LEFT(columnName, CHARINDEX('-', columnName)-1))

你能详细说明一下难度吗?这就成功了。我只需要在末尾添加-2,这样就不会占用空间:)
RTRIM(LEFT(columnName, CHARINDEX('-', columnName)-1))