zoukankan      html  css  js  c++  java
  • TSQL使用函数uppercase更新xml

    XML有很多函数,如upper-case可以把某些值显示或改写为大写。比如下面这个xml类型变量中,第5行与第6行属性值是小写,现想把它显示来大写。

    1 DECLARE @xml XML = '
    2 <Devs>
    3    <lang name="VB.NET"/>
    4    <lang name="C#.NET"/>
    5    <lang name="Java" />
    6    <lang name="Javascript" />
    7    <lang name="ASP.NET" />
    8 </Devs>
    9 ';

    首先我们演示在显示时,才改写为大写,函数语法fn:upper-case()

    SELECT D.l.value('fn:upper-case((/Devs/lang/@name)[3])''NVARCHAR(15)'),
           D.l.value('fn:upper-case((/Devs/lang/@name)[4])''NVARCHAR(15)')
    FROM @xml.nodes('/') D(l)  -- table(column)

    执行结果:

    上面即是在SELECT时改变显示结果,如果改变原值,可以参考http://www.cnblogs.com/insus/archive/2012/02/25/2367857.html xml.modify()的replace value of ... with ... 来修改。

    SET @xml.modify('
                    replace value of (/Devs/lang/@name)[3]
                    with xs:string(fn:upper-case((/Devs/lang/@name)[3]))                
                    
    ');
    SET @xml.modify('
                    replace value of (/Devs/lang/@name)[4]
                    with xs:string(fn:upper-case((/Devs/lang/@name)[4]))                
                    
    ');
    SELECT @xml

    结果:

    或者:

  • 相关阅读:
    jdk silent install test
    jdk silent install
    PS_note_01
    string.split('',-1)的作用
    dos下静默安装
    dos命令中rem 与::的区别
    barcode4j用法
    查看tomcat的版本
    eclipse里启动rabbitmq报错 java.net.SocketException: Connection reset
    Mysql性能调优
  • 原文地址:https://www.cnblogs.com/insus/p/2378434.html
Copyright © 2011-2022 走看看