如何剥离/更改sql server列中的某些字符
我在存储过程中使用了以下select语句:如何剥离/更改sql server列中的某些字符,sql,sql-server,Sql,Sql Server,我在存储过程中使用了以下select语句: SELECT DISTINCT Name, BugID, Summary, Description, reportedDate, versionID, versionName, BugResolution, IssueStatusId, BugStatus, BugType, BugPriority, ComponentName, ReportedBy, STUFF(( SELECT ',' + Comment
SELECT DISTINCT Name, BugID, Summary, Description, reportedDate, versionID, versionName, BugResolution, IssueStatusId, BugStatus, BugType, BugPriority, ComponentName, ReportedBy,
STUFF(( SELECT ',' + Comment
FROM lbbugnet.dbo.report_view I Where I.bugID= O.bugID
FOR
XML PATH('')
), 1, 1, '') as Comment,
Code, IssueResolutionId FROM lbbugnet.dbo.report_view O
WHERE BugID BETWEEN @fromID AND @toID
ORDER BY BugID ASC
这将选择所需的列,并将注释填充到同一列中,而不是单独的记录中。因为该值被转换为XML文本
已改为
p/p,
有什么方法可以防止这种情况发生或在选择后将其更改回?。
SELECT DISTINCT
Name,
BugID,
Summary,
Description,
reportedDate,
versionID,
versionName,
BugResolution,
IssueStatusId,
BugStatus,
BugType,
BugPriority,
ComponentName,
ReportedBy,
Comment.value('.', 'varchar(max)') Comments,
Code,
IssueResolutionId
FROM
(SELECT
Name, BugID, Summary, Description, reportedDate, versionID, versionName, BugResolution, IssueStatusId, BugStatus, BugType, BugPriority, ComponentName, ReportedBy,
CAST(STUFF(( SELECT ',' + Comment
FROM lbbugnet.dbo.report_view I Where I.bugID= O.bugID
FOR
XML PATH('')
), 1, 1, '') as xml) as Comment,
Code, IssueResolutionId
FROM
lbbugnet.dbo.report_view O
WHERE
BugID BETWEEN @fromID AND @toID) A
ORDER BY
BugID ASC