Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/10.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 2008选择特定字符的串联和左侧_Sql_Sql Server_Sql Server 2008 - Fatal编程技术网

SQL Server 2008选择特定字符的串联和左侧

SQL Server 2008选择特定字符的串联和左侧,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,下面的代码将一系列文本连接到一个字段。此查询中的每个命中都有一个^后面的数据。我只想显示^的每一个左边,而不是^本身。这可能吗 这是我的密码 SELECT Cast(Cast(((SELECT * FROM (SELECT(SELECT cddesc + ' ' AS [text()] FROM costdesc WHERE costdesc.cindex = c.cindex ORDER BY cdline FOR xml path(

下面的代码将一系列文本连接到一个字段。此查询中的每个命中都有一个
^
后面的数据。我只想显示
^
的每一个左边,而不是
^
本身。这可能吗

这是我的密码

SELECT Cast(Cast(((SELECT *
   FROM   (SELECT(SELECT cddesc + ' ' AS [text()]
   FROM   costdesc
      WHERE  costdesc.cindex = c.cindex
      ORDER  BY cdline
      FOR xml path('')) AS cddesc) cddesc)) AS
   NVARCHAR(max)) AS NTEXT) AS cddesc

FROM Table
WHERE Blah blah
如蒙协助,将不胜感激


-尼克

不确定你的意思是说每个
cddesc
都是
^something'
'something^'

删除第一个或最后一个字符的方法:

选择子字符串('abcdef',28000)
=
'bcdef'

选择子字符串('abcdef',1,len('abcdef')-1)
=
'abcde'

或如果处于中间

选择子字符串('ab^cd',CharIndex('^','ab^cd')+18000)
=
'cd'


选择子字符串('ab^cd',1,CharIndex('^','ab^cd')-1)
=
'ab'

那么是这样的吗

DECLARE @TestString VARCHAR(100) = 'This is ^a test';

-- get everything to the left of ^   
SELECT SUBSTRING(@TestString,1,CHARINDEX('^', @TestString)-1);

-- get everything to the right of ^ 
SELECT SUBSTRING(@TestString,CHARINDEX('^', @TestString)+1,LEN(@TestSTring));  
导致:

这是


a test

示例cddesc:这是一个完整的描述,作为一个字符串连接在一起,有很多细节^下面是胡萝卜之后的一些信息,我不想在结果中显示。我在这些优秀的示例中了解了子字符串和CHARINDEX的工作原理。我在当前的SELECT CAST(CAST(data))等查询中遇到了一个问题,即在哪里放置它。您可以将它放置在列、完整的SELECT语句、CAST或任何其他返回字符串类型值的内容周围。没有您的数据库模式,也没有对您的意图的准确理解,因此很难给您一个准确的答案。