| 
                
Please start any new threads on our new 
    site at https://forums.sqlteam.com.  We've got lots of great SQL Server
    experts to answer whatever question you can come up with. 
    
        | 
                
                    | 
                            
                                | Author | Topic |  
                                    | fraloPosting Yak  Master
 
 
                                        161 Posts | 
                                            
                                            |  Posted - 2014-04-24 : 09:36:41 
 |  
                                            | Hi,I googled first of course but could find no page which really helped me.  In my table, Audit.Log, is contained a field called 'logdata'.  The values appear like links in the table, which when clicked on reflects data like this:<row UNIQUEKEY="3cGNR2zQ9ENx3iqUpe0hfI">  <column name="ReportStatus" old="9" new="7" /></row>I need to retrieve the values 'name','old','new', along with certain other fields within the record.I would be most appreciative if someone could help me with this.Thank you. |  |  
                                    | James KMaster Smack Fu Yak Hacker
 
 
                                    3873 Posts | 
                                        
                                          |  Posted - 2014-04-24 : 10:13:19 
 |  
                                          | See this example; you can copy and run this to an SSMS query window and run it to see what it does. I am assuming that you have multiple rows of data with multiple columns. If not, the query can be simplified a little bit. DECLARE @x XML = '<row UNIQUEKEY="3cGNR2zQ9ENx3iqUpe0hfI"><column name="ReportStatus" old="9" new="7" /></row>';SELECT	c2.value('./@name','varchar(32)') AS NAME,	c2.value('./@old','varchar(32)') AS old,	c2.value('./@new','varchar(32)') AS newFROM	@x.nodes('/row') T1(c1)	CROSS APPLY c1.nodes('./column') T2(c2) |  
                                          |  |  |  
                                    | fraloPosting Yak  Master
 
 
                                    161 Posts | 
                                        
                                          |  Posted - 2014-04-24 : 10:36:07 
 |  
                                          | Thanks James, but I have more than one row, not just the sample one I cited.  So how does hardcoding it in the DECLARE help?Also, in addition to these specific values (name, old, new) I will need to add to it certain other fields from within the table. Something like...SELECT  ID, REPDATE,	c2.value('./@name','varchar(32)') AS NAME,	c2.value('./@old','varchar(32)') AS old,	c2.value('./@new','varchar(32)') AS newFROM	@x.nodes('/row') T1(c1)	CROSS APPLY c1.nodes('./column') T2(c2) |  
                                          |  |  |  
                                    | James KMaster Smack Fu Yak Hacker
 
 
                                    3873 Posts | 
                                        
                                          |  Posted - 2014-04-24 : 11:03:35 
 |  
                                          | Would be something like this. If you can post the DDL for the table and some sample data to populate the table, I can make the query more specific. SELECT t0.ID, t0.REPDATE,c2.value('./@name','varchar(32)') AS NAME,c2.value('./@old','varchar(32)') AS old,c2.value('./@new','varchar(32)') AS newFROMYourTable t0CROSS APPLY t0.YourXMLColumn.nodes('/row') T1(c1)CROSS APPLY c1.nodes('./column') T2(c2) |  
                                          |  |  |  
                                    | fraloPosting Yak  Master
 
 
                                    161 Posts | 
                                        
                                          |  Posted - 2014-04-24 : 11:36:24 
 |  
                                          | Thanks James.  I tailored your query to my table name and fields, and got it to work.You were a tremendous help.  Thank you very much. |  
                                          |  |  |  
                                |  |  |  |  |  |