Sql server 连接查询中的结果集

Sql server 连接查询中的结果集,sql-server,sql-server-2008,tsql,Sql Server,Sql Server 2008,Tsql,我有一个很久以前编写的查找表,它以以下结构将大文本保存在多行中: eventID Text LineNum 每当我想把它全部拉出来时,我“从tblEvent中选择文本,其中eventID=4 orderbylinenum” 但是现在我尝试将这个表连接到主表,并从事件表中提取所有文本 select m.*,STUFF((select ',' + e.TEXT from tblEvent e where CURRENTFLAG = 'Y' and e.eventID= g.eventIDfor X

我有一个很久以前编写的查找表,它以以下结构将大文本保存在多行中:

eventID
Text
LineNum
每当我想把它全部拉出来时,我“
从tblEvent中选择文本,其中eventID=4 orderbylinenum

但是现在我尝试将这个表连接到主表,并从事件表中提取所有文本

select m.*,STUFF((select ',' + e.TEXT from tblEvent e where CURRENTFLAG = 'Y' and e.eventID= g.eventIDfor XML PATH('')),1,1,'') as 'EVENT' from tblMain m
在上面的例子中,文本get被截断了一半(即使它全部存储在查找表中的一行中)


我做错了什么?如何全面解决问题?

您能为您的表和一些示例数据添加模式,以便我们可以尝试重新创建问题吗?请在SSMS结果面板中对其进行切分吗?如果您是正在使用的输出(结果到文本或结果到网格)?我在SSMS中执行“导出到excel”,文本肯定没有超过excel单元格限制,但在执行填充功能时仍然被剪切。如果问题是在导出到excel时,那么您可以将文本列分成x部分(x=列宽/255)。像子字符串(文本,1255),子字符串(文本,256510)…这样它们可以根据excel单元格宽度进行调整。您是否在SSMS中查看文本?如果是,检查列最多可以输出65535个字符。