SQL嵌套的SELECT语句输出XML编码

时间:2014-04-22 18:09:18

标签: sql sql-server-2008

我在SQL(Microsoft)查询中有以下内容

    SELECT      tblModule.module_id, tblModule.module_name, tblModule.module_desc, tblModule.Alias,
            case generic_flag 
                when '0' then 'On-Demand' 
                when '1' then 'Core' 
            end as application_type,
            case tblModule.notification_flag
                when '0' then 'No'
                when '1' then 'Yes'
            end as notification_enabled,
            case tblModule.deleted 
                when '0' then 'No'
                when '1' then 'Yes'
            end as application_deleted,
            tblModule.guid,
            case tblModule.enable_task_management
                when '0' then 'No'
                when '1' then 'Yes'
            end as task_management_enabled,
            case tblModule.enable_direct_to_edit
                when '0' then 'No'
                when '1' then 'Yes'
            end as direct_to_edit_enabled,
            case tblModuleType.module_type_desc
                when 'questionnaire Module' then 'Questionnaire'
                when 'Input and Validation' then 'Application'
                else 'Sub-Form'
            end as application_class,
            tblModuleStatusType.status_name,
            tblLevel.level_name AS target_application,
            tblModule.create_date,
            tblModule.update_date,
            (SELECT tblNavMenuGroup.nav_menu_group_name as solution
            FROM    tblXNavMenuGroupsModules INNER JOIN
                    tblNavMenuGroup ON tblXNavMenuGroupsModules.nav_menu_group_id = tblNavMenuGroup.nav_menu_group_id
            WHERE  tblXNavMenuGroupsModules.module_id = tblModule.module_id
            FOR XML PATH(''), TYPE) as solutions

FROM        tblModule INNER JOIN
            tblModuleType ON tblModule.module_type_id = tblModuleType.module_type_id INNER JOIN
            tblModuleStatusType ON tblModule.status_id = tblModuleStatusType.status_id LEFT OUTER JOIN
            tblLevel ON tblModule.target_level_id = tblLevel.level_id
WHERE       (tblModule.module_type_id IN (2, 7))
ORDER BY    tblModule.module_name

当我在管理工作室之外执行查询时,它会像这样转义XML

<solutions>&lt;solution&gt;Business Infrastructure&lt;/solution&gt;&lt;solution&gt;Risk and Impact Analysis&lt;/solution&gt;</solutions>

我有什么办法可以将结果作为XML获取吗?

0 个答案:

没有答案