SQLSERVER——XML转数据表输出(E10的PickList转成数据表)

news/2024/11/27 14:52:07/文章来源:https://www.cnblogs.com/xiaoli9627/p/18572295
-- 声明 XML 变量并加载 XML 数据
DECLARE @XML AS XML;
SET @XML= N'<PickListType>    <Name>UDF_COLLECTION_TJ</Name>    <DisplayName>收款条件</DisplayName>    <Items>      <PickListItem>        <Id>合同签订</Id>        <Sequence>1</Sequence>        <DisplayName>合同签订</DisplayName>      </PickListItem>      <PickListItem>        <Id>出机</Id>        <Sequence>2</Sequence>        <DisplayName>出机</DisplayName>      </PickListItem>      <PickListItem>        <Id>到货</Id>        <Sequence>3</Sequence>        <DisplayName>到货</DisplayName>      </PickListItem>      <PickListItem>        <Id>安装调试</Id>        <Sequence>4</Sequence>        <DisplayName>安装调试</DisplayName>      </PickListItem>      <PickListItem>        <Id>验收</Id>        <Sequence>5</Sequence>        <DisplayName>验收</DisplayName>      </PickListItem>      <PickListItem>        <Id>质保</Id>        <Sequence>6</Sequence>        <DisplayName>质保</DisplayName>      </PickListItem>      <PickListItem>        <Id>票到</Id>        <Sequence>7</Sequence>        <DisplayName>票到</DisplayName>      </PickListItem>    </Items>  </PickListType>';SELECT t.Name,t.DisplayName,t.Description,t.ItemId,t.ItemSequence,t.ItemDisplayName
FROM
(SELECT T.C.value('(Name/text())[1]', 'NVARCHAR(100)') AS Name,T.C.value('(DisplayName/text())[1]', 'NVARCHAR(100)') AS DisplayName,T.C.value('(Description/text())[1]', 'NVARCHAR(MAX)') AS Description,I.C.value('(Id/text())[1]', 'NVARCHAR(10)') AS ItemId,I.C.value('(Sequence/text())[1]', 'INT') AS ItemSequence,I.C.value('(DisplayName/text())[1]', 'NVARCHAR(100)') AS ItemDisplayNameFROM @XML.nodes('/PickListType') AS T(C)CROSS APPLY T.C.nodes('Items/PickListItem') AS I(C)
) t
ORDER BY t.ItemSequence

 

--E10的picklist
SELECT * FROM dbo.ConfigurationAccountSet AS cas WHERE cas.FullName LIKE 'PickListType.%'

 

效果:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/842301.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

真正的高效神器!这款工具让办公不再受限于时间和空间!

碎片化时代的办公难题:你的工作为什么越来越难? 在信息高度碎片化的今天,办公场景已经发生了巨大的变化: 多设备切换频繁:你可能上午在电脑上处理报告,下午在会议室用平板展示方案,晚上回家用手机跟进工作进度。 随时随地的协作需求:远程会议、跨部门沟通、即时反馈,让…

Nuxt.js 应用中的 webpack:progress 事件钩子

title: Nuxt.js 应用中的 webpack:progress 事件钩子 date: 2024/11/27 updated: 2024/11/27 author: cmdragon excerpt: webpack:progress 钩子用于监听 Webpack 在构建过程中的进度更新。这是一个非常有用的特性,特别是在构建大型应用时,可以给开发者实时反馈,以便他们…

从行为到效果:医药营销数字化的关键转型之路

随着医药行业竞争的加剧和监管政策的日趋严格,数字化转型已成为企业谋求突破的重要方式。特别是在医药营销中,如何通过数字化手段提升销售行为的规范性和营销效果的精准性,成为行业关注的焦点。 聚焦医药营销数字化转型的核心问题,从销售行为优化到效果管理,探讨企业在转型…

为什么Profiler中看到的纹理内存比实际占用大

1)为什么Profiler中看到的纹理内存比实际占用大2)为什么Hidden Shader占用两份内存开销3)在Destroy前,需要把所有Texture引用都释放掉吗4)ManagedHeap.UsedSize占用内存过大问题这是第411篇UWA技术知识分享的推送,精选了UWA社区的热门话题,涵盖了UWA问答、社区帖子等技术…

如何构建和发布 npm 包到 GitHub Package Registry?

如何构建和发布 npm 包到 GitHub Package Registry? 发表于 2023/12/19 更新于 2023/12/23 作者 小王爷 4 分钟阅读本文将指导您在 GitHub Packages 上构建和发布 npm 到 GPR。npm:全称 Node Package Manager,NodeJs 包管理和分发的工具。 GPR:全称 GitHub Package Regist…

创业公司该怎么进行季度绩效考核?

创业公司在绩效考核中面临的问题主要包括目标设定不清晰、时间安排不合理、绩效标准不明确、缺乏反馈和沟通、过分关注短期成果、资源不足以及文化差异等。这些问题可能单独或共同存在,导致绩效考核无法达到预期效果,甚至可能对员工的工作积极性和公司的发展造成负面影响。因…

eGFR计算器,专业可靠的肾功能评估工具

在当今数字化医疗时代,准确评估肾功能对于疾病预防和治疗至关重要。eGFR计算器作为一款专业的在线工具,为医疗工作者和患者提供了便捷可靠的肾小球滤过率(eGFR)计算服务。在当今数字化医疗时代,准确评估肾功能对于疾病预防和治疗至关重要。eGFR计算器作为一款专业的在线工具…

数据库小版本升级

PostgresQL14.9升级到14.13 step 1.查看当前数据库版本和测试数据[postgres@localhost ~]$ postgres -V postgres (PostgreSQL) 14.11 [postgres@localhost ~]$ psql psql (14.11) Type "help" for help. postgres=# postgres=# select version(); version ---------…

HarmonyOS开发笔记2

应用基本信息 我们先来看下harmony的工程结构中的文件主要涉及以下几个目录AppScope > app.json5:应用的全局配置信息,详见app.json5配置文件。 entry:HarmonyOS工程模块,编译构建生成一个HAP包。src > main > ets:用于存放ArkTS源码。 src > main > ets &…

CAN收发器 – TJA1050(高速CAN)

芯片内部电路引脚定义:VCC:5V TX、RX:与设备的CAN控制器相连 Vref:参考电平输出 S:选择输入是高速模式或者静默模式ps:Vref和S可不接

常见的几款电脑桌面好用的便签备忘录推荐

1、系统自带便笺 Windows系统自带有便笺(sticky notes),打开即可使用,可记录简单的文字、图片,也可以列清单。 但是不支持设置提醒时间,无法一直悬挂在桌面上显示,实时同步到手机端操作很麻烦。 仅在电脑上简单记事,用它足够了!2、敬业签 界面可以一直悬挂在桌面上置顶…

【java开发】使用Launch4j将Web应用的Jar包打包成exe

如果当你在工作中使用Java比较多,有时会碰到将Jar包打包成exe部署在客户电脑上的需求。经过一顿操作猛如虎的网上搜索,最后技术选型选择了Launch4j,就图它开源免费、上手简单。 Launch4j 是一个跨平台工具,用于将以 JAR 文件分发的 Java 应用程序封装为轻量级的 Windows 原…