sqlserver的table转换xml问题

cxs_001 2018-10-12 05:39:11
我语句如下:
--转换xml
DECLARE @ParameterSQL NVARCHAR(MAX)='SELECT A.Account,''null''),isnull(B.Id,''null''),isnullB.EmployeCode,B.Name,B.EmployeType,BirthDate,NativePlace,B.Education,Major,Tel,Email,Address,OrganizeId,DepartmentId,DutyId,PostId,WorkingCondition,Background,CheckinTime,B.EmployeStatus,Picture,Sex,Volk,IDCard,A.Age,DateOfStartWork,DateWorkForceXincai,DateWorkForJiangong,PoliticalStatus,DateToPolity,RegisteredPlace,HouseholdType,B.IsArtisan,Comment,SalaryProationPeriod,BasicSalary,SocialSecurityNumber,SocialSecurityRadices,ProvidentFundAccount,ProvidentFundRadices,IsMarried,BloodType,ForeignLanguage,ForeignLanguageLevel,ComputerLevel,SpecialGroup,MilitaryInfo,ContractID,InternalTitle,OutTitle,IsAgreeToContract,AppraisalStatus,LastDateOfAppraisal,RecruitPrimaryId,WorkReportStatus,RelieveTime,RetireFlag,DoubleDegree,SalaryPosition,B.InPostId,B.Nature,B.PostionNature,B.LivingExpenses,DutyAllowance,B.SkillAllowance,B.OutstandingAllowance,B.Rank,B.Post2,B.Post3,DutyTime,PostTime1,PostTime2,PostTime3,InPostTime,CreateTime,ModifyTime FROM WagesTabulationStaff A LEFT JOIN Staff B ON A.EmployeeID=B.ID WHERE B.ID=''7a96cad9-4264-43cb-99c1-0e39ee33bc9c'' ';
DECLARE @SQL NVARCHAR(MAX)
DECLARE @XMLString VARCHAR(MAX)
DECLARE @XML XML
DECLARE @Paramlist NVARCHAR(1000)
SET @Paramlist = N'@XML XML OUTPUT'
SET @SQL = 'WITH PrepareTable (XMLString)'
SET @SQL = @SQL + 'AS( '
SET @SQL = @SQL + @ParameterSQL+ ' FOR XML RAW,TYPE,ELEMENTS'
SET @SQL = @SQL + ')'
SET @SQL = @SQL + 'SELECT @XML=[XMLString]FROM[PrepareTable]'
EXEC sp_executesql @SQL, @Paramlist, @XML=@XML OUTPUT
SET @XMLString=CAST(@XML AS VARCHAR(MAX))
SELECT @XML;
--转换json
declare @text varchar(max)
exec [SerializeJSON] @XMLString,@text out
select @text


问题:在table转换xml的时候,当值为空的时候,xml里面就没得那个项目。
请问怎么做?
我之前用了isnull的方法,但是由于别人设计的表不怎么好,isnulll无法解决这个问题。
在线等,急。
...全文
506 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
king4323210 2018-10-19
  • 打赏
  • 举报
回复
建议用 xmlpath 来进行转换

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧