sql server - xml to sql - need a few more data from the xml -


while having xml data:

    <machine>zsk40-2</machine> <date>2013/08/28</date> <hour>12:37</hour> <collecteddata>   <variable>     <name>product</name>     <value>filler 580</value>   </variable>   <variable>     <name>lot_number</name>     <value>cg 00063 0</value>   </variable>   <variable>     <name>shift_supervisor</name>     <value> covaliu l</value>   </variable>   <variable>     <name>kgh_all_set</name>     <value>90</value>   </variable>   <variable>     <name>kgh_all_real</name>     <value>133.183883666992</value>   </variable>   <variable>     <name>kgh_f1_set</name>     <value>90</value>   </variable>   <variable>     <name>kgh_f1_real</name>     <value>133.183883666992</value>   </variable>   <variable>     <name>k_f1</name>     <value>33</value>   </variable>   <variable>     <name>screw_rpm_set</name>     <value>400</value>   </variable>   <variable>     <name>screw_rpm_real</name>     <value>399.452606201172</value>   </variable>   <variable>     <name>torque</name>     <value>19.6692142486572</value>   </variable>   <variable>     <name>current</name>     <value>71.0029983520508</value>   </variable>   <variable>     <name>kw_kg</name>     <value>0.0553370267152786</value>   </variable>   <variable>     <name>kw</name>     <value>7.36999988555908</value>   </variable>   <variable>     <name>melt_pressure</name>     <value>0</value>   </variable>   <variable>     <name>melt_temperature</name>     <value>140</value>   </variable>   <variable>     <name>pv1</name>     <value>141</value>   </variable>   <variable>     <name>sp1</name>     <value>140</value>   </variable>   <variable>     <name>pv2</name>     <value>160</value>   </variable>   <variable>     <name>sp2</name>     <value>160</value>   </variable>   <variable>     <name>pv3</name>     <value>160</value>   </variable>   <variable>     <name>sp3</name>     <value>160</value>   </variable>   <variable>     <name>pv4</name>     <value>160</value>   </variable>   <variable>     <name>sp4</name>     <value>160</value>   </variable>   <variable>     <name>pv5</name>     <value>160</value>   </variable>   <variable>     <name>sp5</name>     <value>160</value>   </variable>   <variable>     <name>pv6</name>     <value>150</value>   </variable>   <variable>     <name>sp6</name>     <value>150</value>   </variable>   <variable>     <name>pv7</name>     <value>150</value>   </variable>   <variable>     <name>sp7</name>     <value>150</value>   </variable>   <variable>     <name>pv8</name>     <value>154</value>   </variable>   <variable>     <name>sp8</name>     <value>150</value>   </variable>   <variable>     <name>pv9</name>     <value>150</value>   </variable>   <variable>     <name>sp9</name>     <value>150</value>   </variable>   <variable>     <name>pv10</name>     <value>160</value>   </variable>   <variable>     <name>sp10</name>     <value>160</value>   </variable>   <variable>     <name>pv11</name>     <value>180</value>   </variable>   <variable>     <name>sp11</name>     <value>180</value>   </variable> </collecteddata> 

and script:

create table #zsk70(  name varchar(25) ,  value varchar(30) );   insert #zsk70 (name, value)  select x.variable.query('name').value('.', 'varchar(25)'),        x.variable.query('value').value('.', 'varchar(30)') (  select cast(x xml) openrowset(      bulk 'c:\20130828_1237_zsk40-2.xml',      single_blob) t(x)      ) t(x) cross apply x.nodes('collecteddata/variable') x(variable);  select * #zsk70  drop table #zsk70  

i data xml. how can machine , date + time in datetime row. in advance help! keep eye here.

try this:

select x.variable.query('name').value('.', 'varchar(25)'),    x.variable.query('value').value('.', 'varchar(30)'),    x2.variable.query('machine').value('.','varchar(30)'),    x2.variable.query('date').value('.','datetime') (  select cast(x xml) openrowset(  bulk 'c:\20130828_1237_zsk40-2.xml',  single_blob) t(x)  ) t(x) cross apply x.nodes('collecteddata/variable') x(variable) cross apply x.nodes('/') x2(variable); 

p.s. think reason downvotes on question left openrowset in query reference external file. makes bit of pain work example provided.


Comments

Popular posts from this blog

Unable to remove the www from url on https using .htaccess -