gpt4 book ai didi

sql - 为什么 char(13)+char(10) in for xml path ('' ) 不起作用?

转载 作者:行者123 更新时间:2023-12-04 23:48:12 27 4
gpt4 key购买 nike

当我在查询中使用 char(13)+char(10) 时它有效,但是当我在查询中使用 char(13)+char(10) 时具有 for xml path('') 的查询不起作用,取而代之的是我得到了这个字符 我认为这是因为两个 for xml path('') 尽管它可能不是。我该怎么办?

有我的代码示例:

select d.title+char(13)+char(10)+
(
select c.title+char(13)+char(10)+
(
select a.title+b.title+char(13)+char(10)
from tbl_one a
inner join tbl_two b on a.id=b.one
where a.id=aa.id
for xml path('')
)
from tbl_one aa on
inner join tbl_three c on aa.id=c.one
where aa.id=aaa.id
for xml path('')
)
from tbl_four d
inner join tbl_one aaa on d.one=aaa.id

最佳答案

像这样为您的 xml 输出指定一个类型指令:

select d.title+char(13)+char(10)+
(
select c.title+char(13)+char(10)+
((
select a.title+b.title+char(13)+char(10)
from tbl_one a
inner join tbl_two b on a.id=b.one
where a.id=aa.id
for xml path (''), type).value('(./text())[1]','nvarchar(max)')
)
from tbl_one aa on
inner join tbl_three c on aa.id=c.one
where aa.id=aaa.id
for xml path (''), type).value('(./text())[1]','nvarchar(max)')
from tbl_four d
inner join tbl_one aaa on d.one=aaa.id

引用:


rextester 演示:http://rextester.com/ETCRIW69262

select 'd'+char(13)+char(10)+
(
select c+char(13)+char(10)+
(
select a+b+char(13)+char(10)
from (values ('a','b')) x (a,b)
for xml path ('')
)
from (values ('c'))x(c)
for xml path (''))

返回:

d
c
ab

和这个版本:

select 'd'+char(13)+char(10)+
(
select c+char(13)+char(10)+
((
select a+b+char(13)+char(10)
from (values ('a','b')) x (a,b)
for xml path (''), type).value('(./text())[1]','nvarchar(max)')
)
from (values ('c')) x (c)
for xml path (''), type).value('(./text())[1]','nvarchar(max)')

返回:

d
c
ab

关于sql - 为什么 char(13)+char(10) in for xml path ('' ) 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45012059/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com