在DB中 - 仅有1列和1行。SQL,如何使用Char(10)/ Char(13)在没有使用新行时对文本进行子字符串排序
使用查询:
SUBSTRING(p.notes,0,CHARINDEX(CHAR(13)+CHAR(10), p.notes ,1)) as name
当有两条线中列所有工作正常。 当只有一行,不带换行符或输入(CHAR(13)+CHAR(10)
)时,我得到NULL
。
如何解决?
在DB中 - 仅有1列和1行。SQL,如何使用Char(10)/ Char(13)在没有使用新行时对文本进行子字符串排序
使用查询:
SUBSTRING(p.notes,0,CHARINDEX(CHAR(13)+CHAR(10), p.notes ,1)) as name
当有两条线中列所有工作正常。 当只有一行,不带换行符或输入(CHAR(13)+CHAR(10)
)时,我得到NULL
。
如何解决?
只需确保总有至少一个\ r \ n通过添加一个字符串的末尾:
SUBSTRING(p.notes, 0, CHARINDEX(CHAR(13) + CHAR(10), p.notes + CHAR(13) + CHAR(10), 1)) as name
使用的情况下,构建体:
select case when p.notes like '%char(10) + char(13)%' then your code
else p.notes end as name
谢谢。正常工作:D –
数据库只有一个值?什么意思... – jarlh