Solved

How to query a CLOB field

Posted on 2008-10-02
5
243 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

How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline

Join & Write a Comment

As they say in love and is true in SQL: you can sum some Data some of the time, but you can't always aggregate all Data all the time! Introduction: By the end of this Article it is my intention to bring the meaning and value of the above quote to…
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.…
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…
This video explains how to create simple products associated to Magento configurable product and offers fast way of their generation with Store Manager for Magento tool.

746 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

Need Help in Real-Time?

Connect with top rated Experts

7 Experts available now in Live!

Get 1:1 Help Now