Aditya_ETL Ответов: 1

Чтение XML-тегов с помощью SQL-запроса


Привет, ниже извлечение из XML-файла:
 
<CreditApplication ID="1776065">
<creditapplicationdetails>
<p4lmargin>4.3
<лендермаргин>79.3
<p4lmarketing>0
<lendermarketing>0


Эквивалентный запрос Select для чтения XML:

ВЫБИРАТЬ
/*ИДЕНТИФИКАТОР ПРИЛОЖЕНИЯ*/
CreditApplicationID = ca.value('@ID','INT')
/*ДЕТАЛИ ЗАЯВКИ*/
, P4LMargin = ca.value('(CreditApplicationDetails/P4LMargin/text())[1]','DECIMAL(16,3)')
, LenderMargin = ca.value('(CreditApplicationDetails/LenderMargin/text())[1]','DECIMAL(16,3)')
, P4LMarketing = ca.value('(CreditApplicationDetails/P4LMarketing/text())[1]','бит')
, LenderMarketing = ca.value('(CreditApplicationDetails/LenderMarketing/text())[1]','бит')

ОТ
AppFileXML tXML
Перекрестное применение tXML.AppFileXMLContent.nodes('MIData/CreditApplication') Как CredAppl(ca)

Теперь ниже два флейта :

<p4lmarketing>0
<lendermarketing>0

изменяются на :

<Marketing type="CloseBrothersLimited">1
<Marketing type="CloseBrothersPlc">0

Каким будет эквивалентный SQL-запрос для того же самого? Пожалуйста, помогите, заранее спасибо



Спасибо и с уважением,
Адитья Агарвал

Что я уже пробовал:

Я новичок в XML любая помощь будет высоко оценена

1 Ответов

Рейтинг:
0

Richard Deeming

Заменять:

CreditApplicationDetails/P4LMargin/text()
с:
CreditApplicationDetails/Marketing[@type="CloseBrothersLimited"]/text()

Я уверен, что вы можете решить, что делать с другим элементом. 🙂