Sql server 2005 从字符串返回第一行
我有一个字符串,它包含三行,我可以从sqlserver中的字符串中检索第一行 外汇:Sql server 2005 从字符串返回第一行,sql-server-2005,Sql Server 2005,我有一个字符串,它包含三行,我可以从sqlserver中的字符串中检索第一行 外汇: declare @Str as nvarchar(200) Set @Str='This is for test'+char(10)+ ' second line'+char(10)+ 'Third line' insert into some test table. 我怎么能从这里找到第一行 SELECT SUBSTRING(@Str,0,CHARINDEX(char
declare @Str as nvarchar(200)
Set @Str='This is for test'+char(10)+
' second line'+char(10)+
'Third line'
insert into some test table.
我怎么能从这里找到第一行
SELECT SUBSTRING(@Str,0,CHARINDEX(char(10),@Str))
编辑:如果文本只有一行,则可以使用案例:
SELECT CASE WHEN CHARINDEX(char(10),@Str)=0 THEN @Str
ELSE SUBSTRING(@Str,0,CHARINDEX(char(10),@Str)) END
试试这个:
select Note_Sets.cNoteCode,
SUBSTRING(Note_Sets.cScript,1,CHARINDEX(char(10),Note_Sets.cScript)) as cFirstLine
from dbo.Note_Sets
可以使用字符(10)或字符(13)。至少从Postgres 9.0开始:
SELECT split_part(some_column, E'\n', 1) from some_table
注意:
E
是将文本转义为a所必需的。在某些情况下,字符串可能只有一行,在这种情况下它不会返回任何字符串?@Nag为该情况添加了一个select