Solved

How to query a CLOB field

Posted on 2008-10-02
5
246 Views
Last Modified: 2011-10-19
Hi.  I have a piece of code that downloads a Clob field into a table and then I parse out the node that I need from the field.  The problem is that there are several nodes that have the same name and I need to be able to filter by the attribute.  I have attached my code as well as a snapshot of what the node tree looks like.  The name of the nodes are all called "item" but they are all have different attribute types.  I am looking for attribute name =  'Type'  and attribute value =  "TX_SALE" but I don't know how to write this in the where statement.  I have selected the first node in my where statement by default but this isn't returning all my data.  I need to be able to filter by attribute.  Can someone help me?
INSERT into #WorkingDataset
SELECT
	CAST(xmlsrc.SITE_NO as Integer)			SITE_NO,
	CAST(xmlsrc.TRAN_DT as DateTime)		TRAN_DT, 
	CAST(xmlsrc.REG_NO as Integer)			REG_NO,
	CAST(xmlsrc.TRAN_NO as Integer)			TRAN_NO,
	CAST(xmlsrc.XML_PENDING as CHAR(1))		XML_Status,
	CAST(xmlsrc.XML_DATA as XML) 			XML_DATA
	
FROM
	[TOMAX_PROD]..[TMX].[TX_STAGING] xmlsrc
	
-----------------------------------------------------------
-- Now that we converted this to xml data we can use,
-- we need to return everything that has a reason_code
-----------------------------------------------------------
SELECT
	Site_No,
	Tran_dt,
	Reg_no,
	Tran_No,
	XML_Status,
	nref.value('itemno[1]', 'VarChar(12)') SKUCode,
	nref.value('quantity[1]', 'Integer') QuantitySold,
	nref.value('reason_code[1]/qty[1]', 'Integer') qty
INTO #ReturnResults	
FROM   
	#WorkingDataset CROSS APPLY XML_Data.nodes('/transaction/item') AS R(nref)
WHERE
	LEN(nref.value('itemno[1]', 'VarChar(12)')) = 6
	
ORDER BY
	Site_No,
	Tran_dt,
	Reg_no,
	Tran_No

Open in new window

0
Comment
Question by:skielark
  • 3
  • 2
5 Comments
 
LVL 51

Assisted Solution

by:Mark Wills
Mark Wills earned 60 total points
ID: 22643553
Can you the XML source data ? just a few... Think you are missing that snapshot as well...
0
 

Author Comment

by:skielark
ID: 22647033
I don't even understand the question.  Can you the XML source data?  What does that mean.
0
 
LVL 51

Assisted Solution

by:Mark Wills
Mark Wills earned 60 total points
ID: 22648941
Yeah - I am having a hard time understanding it myself ...

CLOB returns the contents as a single-row, single-column rowset of type varchar(max), so you may have to use some of the XML facilities.

Can you post a few lines of of your source data... and how you are loading it ?

You mentioned a snapshot that you were attaching, but didn't see it...
0
 
LVL 51

Assisted Solution

by:Mark Wills
Mark Wills earned 60 total points
ID: 22648944
Also, what versions of SQL are you using...
0
 

Accepted Solution

by:
skielark earned 0 total points
ID: 22651820
Mark, I can use either SQL server 2000 or 2005.  I attached the screenshot of the source data with the nodes.
Attribute.doc
0

Featured Post

DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
sql query to calculate avaerage 21 52
Help with a script Updating records from other records in the Same table 13 49
SQL Syntax 24 42
RAISERROR WITH NOWAIT 2 14
Introduction Hopefully the following mnemonic and, ultimately, the acronym it represents is common place to all those reading: Please Excuse My Dear Aunt Sally (PEMDAS). Briefly, though, PEMDAS is used to signify the order of operations (http://en.…
If you find yourself in this situation “I have used SELECT DISTINCT but I’m getting duplicates” then I'm sorry to say you are using the wrong SQL technique as it only does one thing which is: produces whole rows that are unique. If the results you a…
Established in 1997, Technology Architects has become one of the most reputable technology solutions companies in the country. TA have been providing businesses with cost effective state-of-the-art solutions and unparalleled service that is designed…
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used.

790 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question