Apply的两个应用
来源:互联网 发布:重装系统哪个软件好 编辑:程序博客网 时间:2024/05/18 03:26
APPLY比较实用,下面看两个应用。
1,字符连接
使用AdventureWorkDW2008R2
select c.ProductCategoryKey, b.namefrom dbo.DimProductCategory ccross apply(select ','+CONVERT(nvarchar(20),s.EnglishProductSubcategoryName)from dbo.DimProductSubcategory swhere c.ProductCategoryKey=s.ProductCategoryKeyorder bys.EnglishProductSubcategoryNamefor xml path (''),type) a(n)cross apply(select STUFF(a.n.value('./text()[1]','nvarchar(max)'),1,1,'')) b(name)order byc.ProductCategoryKey
结果如下
2,XML提取表
<students><student name="Bush"><subjects><subject name="Math" score="10"/><subject name="English" score="20"/><subject name="Science" score="30"/></subjects></student><student name="Obama"><subjects><subject name="Math" score="15"/><subject name="English" score="25"/><subject name="Science" score="35"/></subjects></student></students>
select t.student,t.subject,t.scorefrom @x.nodes('./students/student') student (rowset)cross apply student.rowset.nodes('./subjects/subject') subject (rowset)cross apply (select student.rowset.value('@name','nvarchar(20)'), subject.rowset.value('@name','nvarchar(20)'), subject.rowset.value('@score','int') ) t (student,subject,score) order by t.student asc,t.score desc;
结果如下
- Apply的两个应用
- Python: Apply方法的应用
- JS中apply()的应用
- SQL:CROSS APPLY和OUTER APPLY的应用
- SQL Server CROSS APPLY和OUTER APPLY的应用详解
- js中call与apply的应用
- Function中的apply函数的应用
- Unpivot 和 Apply的应用比较
- R语言中各种apply的应用
- angularjs基础—$scope.$apply的应用
- Javascript中apply与call的应用
- js中apply和call的应用
- ExtJs--13-- Ext.apply(src,apply) 和 Ext.applyIf(src,apply) 两个方法的使用和区别比较
- javascript中的call和apply两个方法的区别
- SQL Server中CROSS APPLY和OUTER APPLY的应用详解
- SQL Server中CROSS APPLY和OUTER APPLY的应用详解
- Ext.apply小小应用
- JS call & apply 应用
- 《javascript权威教程》、《javascript 王者归来》等几本书javascript
- JavaScript -- name spacejavascript
- JavaScript中的5种事件使用方式解说javascript
- JAVASCRIPT弹出窗口大总结 javascript
- 14个非常棒的 JavaScript 游戏开发框架推荐javascript
- Apply的两个应用
- 2011: Linux Mint 是胜利者? Debian 才是!
- computer organization and design notes(1)
- computer organization and design notes(2)
- 关于阅读技术类图书的思考
- [Ubuntu]: 把Ubuntu Desktop打造成完整的Mac Leopard风格
- 《DB 查询分析器》中断SQL语句的执行
- 賀旺囍影_EDIUS6.06安装版 【实机测试】
- 虚拟化技术的最初的目的是提高CPU和其他资源的利用率