MSSQL 指定分隔符号 生成数据集

DECLARE
    @xml VARCHAR(MAX)=‘磨毛:1
缩率:2
干磨:3
湿摩:4
水洗牢度:5
手感:6
防水:7
PH:8
日晒:9‘

SET @xml= ‘<root>‘+CHAR(10)+‘<r><v>‘+REPLACE(REPLACE(@xml,CHAR(10),‘</v1></r>‘+CHAR(13)+‘<r><v>‘),‘:‘,‘</v><v1>‘)+‘</v1></r>‘+CHAR(10)+‘</root>‘
BEGIN TRY

DECLARE
    @xml2 XML= @xml

SELECT * FROM(
SELECT t.v.query(‘.‘).value(‘/r[1]/v[1]‘,‘varchar(50)‘) as gy,
       t.v.query(‘.‘).value(‘/r[1]/v1[1]‘,‘varchar(50)‘) as gyyq
FROM @xml2.nodes(‘/root/r‘)t(v)) a
PIVOT(MAX(gyyq) FOR gy IN ([磨毛],[缩率],[干磨],[湿摩],[水洗牢度],[手感],[防水],[PH],[日晒])) AS pvt
END TRY
BEGIN CATCH
    IF @@ERROR>0
        SELECT NULL AS [磨毛],NULL AS [缩率],NULL AS [干磨],NULL AS [湿摩],NULL AS [水洗牢度],NULL AS [手感],NULL AS [防水],NULL AS [PH],NULL AS [日晒]
              ,ERROR_MESSAGE()
END CATCH

--这里展示的是多列的情况

原文地址:https://www.cnblogs.com/BTag/p/12699696.html

时间: 04-14

MSSQL 指定分隔符号 生成数据集的相关文章

SQL Server中自定义函数:用指定的分隔符号分割字符串

2014-11-13 微软SQL Server数据库中包含了很多内置的函数,入下图: 它们用于处理日期.数学.元数据.字符串等. 其中最为常用的就是处理字符串,里面包含了CharIndex()等函数,非常方便使用. 但是对于 特殊字符串的处理,比如:ISBN号 '978-7-5007-7234-7',如果想获取第三个与第四个分割符号之间的数字, 那么SQL 内置函数无法直接做到.这时就需要自定义函数.下面自定义三个函数,用于处理特殊的字符串. 一.按指定符号分割字符串,返回分割后的元素个数 1

指定范围内生成随机数

随机数生成20~70之间的数值: public class Random { public static void main(String[] args) { java.util.Random r = new java.util.Random(); for (int i = 0; i < 10; i++) { System.out.print(" " + (r.nextInt(70) + 20)); } } } 运行结果如下图: 指定范围内生成随机数,布布扣,bubuko.com

在指定图片上生成文字,文字格式可调

在指定图片上生成文字,文字格式可调,最终效果为 public class Waterark { private int _width; private int _height; private string _fontFamily; private int _fontSize; private bool _adaptable; private FontStyle _fontStyle; private bool _shadow; private string _backgroundImage;

Js控制文本框只能输入中文、英文、数字与指定特殊符号

JS 控制文本框只能输入数字<input onkeyup="value=value.replace(/[^0-9]/g,'')"onpaste="value=value.replace(/[^0-9]/g,'')" oncontextmenu ="value=value.replace(/[^0-9]/g,'')"> JS 控制文本框只能输入数字.小数点<inputonkeyup="value=value.replac

OleDb读取CSV文件:使用指定的分隔符号

今天在用OleDb方式读取一个CSV文件的时候,发现得到的文本不是通常用逗号隔开的.而是用Tab制表符来隔开的. OrderID OrderName 1 1 2 2 3 3 然后去MSND查询了了下发现有针对Tab制表符的指定参数: TabDelimited 文件被当做制表符分隔的文件 然后尝试了下降FMT设置为TabDelimited,但是结果却发现并不能得到分隔的结果.貌似被微软的文档坑了还是自己的了理解可能有偏差.看到FMT还有其他的参数,然后就逐一尝试了: FMT=1 ==>失败 FMT

es 的document id的手动指定和自动生成的解析

1.手动指定document id (1)根据应用情况来说,是否满足手动指定document id的前提: 一般来说,是从某些其他的系统中,导入一些数据到es时,会采取这种方式,就是使用系统中已有数据的唯一标识,作为es中document的id.举个例子,比如说,我们现在在开发一个电商网站,做搜索功能,或者是OA系统,做员工检索功能.这个时候,数据首先会在网站系统或者IT系统内部的数据库中,会先有一份,此时就肯定会有一个数据库的primary key(自增长,UUID,或者是业务编号).如果将数

Linux下给指定目录下指定文件类型生成md5文件

对指定目录下扩展名为.asset,.manifest,.wem,.bnk的文件计算md5并汇总到指定文件中. md5文件内容格式: 文件名,md5 类似: Audio_Knives_Skill_1_43_9E69E797.wem,bc87ec6bce97e93824a0fdfa39ebafaf Audio_Knives_Skill_1_43_50DB02DB.wem,78d62b1f25c59ddffcfcda75e555e850 Audio_Knives_Skill_2_44_9E69E797

JS 控制文本框只能输入中文、英文、数字与指定特殊符号

想做姓名输入的js判断是否是中文,但是网上找的很多是源于一篇文章的,判断中文的正则式不对,后来找到一个可以准确判断了,但是是监测里面有中文的就行,跟我想要的只能输入中文的意思相左,所以又找了下面的 JS 控制文本框只能输入数字 input onkeyup="value=value.replace(/[^0-9]/g,'')" onpaste="value=value.replace(/[^0-9]/g,'')" oncontextmenu = "value

C# 指定ip段生成ip地址

private void button1_Click(object sender, EventArgs e) { string StartIp = ""; string EndIp = ""; StartIp = Startinput.Text; EndIp = Endinput.Text; uint iStartip = ipTint(StartIp); uint iEndIp = ipTint(EndIp); //string ip_result="&

使用sqljdbc连接mssql数据库,maven生成jar运行后报&quot;Exception in thread &quot;main&quot; java.lang.SecurityException&quot;错误

错误信息如下: Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes 网上查到,说是需要重新打一下sqljdbc    http://blog.chinaunix.net/uid-26706281-id-3210704.html 把该博客的内容copy下来: 插件打成的jar包运行出现这个异常,异常处理办法 1.