0
Я хочу выбрать все значения li 1 ta 3 (например). но я не могу. мой код нижний и конечный выпуск в конце вопрос.Как выбрать значение текста из html-документа в sql?
Код:
Declare @XML1 xml = N'
<div>
<div>
<h4>انتخاب رنگ</h4>
<ul id="frmErblProductColor" autocompelete="off">
<li>
<div id="frmErblProductColor_ContainerItem_0" class="DkProductColorBox">
<input id="frmErblProductColor_RadioItem_0" type="radio" name="ctl29$frmErblProductColor$ProductColorGroup" value="1" checked="checked"/>
<label id="frmErblProductColor_LabelItem_0" for="frmErblProductColor_RadioItem_0" data-color="#2b2b2b">مشکی</label>
</div>
</li>
<li>
<div id="frmErblProductColor_ContainerItem_1" class="DkProductColorBox">
<input id="frmErblProductColor_RadioItem_1" type="radio" name="ctl29$frmErblProductColor$ProductColorGroup" value="4"/>
<label id="frmErblProductColor_LabelItem_1" for="frmErblProductColor_RadioItem_1" data-color="blue">آبی</label>
</div>
</li>
<li>
<div id="frmErblProductColor_ContainerItem_2" class="DkProductColorBox">
<input id="frmErblProductColor_RadioItem_2" type="radio" name="ctl29$frmErblProductColor$ProductColorGroup" value="16"/>
<label id="frmErblProductColor_LabelItem_2" for="frmErblProductColor_RadioItem_2" data-color="darkred">زرشکی</label>
</div>
</li>
</ul>
</div>
<div></div>
<ul></ul>
</div>';
SELECT
t.v.value('(div[1]/h4/text())[1]','nvarchar(max)') AS [Selection]
,t.v.value('(ul/li/div/label/text())[1]','nvarchar(max)') AS [Value]
,t.v.value('(ul/li/div/input/@value)[1]','nvarchar(max)') AS [Code]
FROM
@XML1.nodes('div/div[1]') as t(v)
SELECT
c.d.value('.','nvarchar(max)') AS [Selection]
,t.v.value('.','nvarchar(max)') AS [Value]
,f.j.value('@value','nvarchar(max)') AS [Code]
FROM
@XML1.nodes('div/div[1]/div[1]/h4') as c(d)
cross apply @XML1.nodes('div/div[1]/ul/li/div/label') as t(v)
cross apply @XML1.nodes('div/div[1]/ul/li/div/input') as f(j)
Выход Окончательный должен:
[Code] [Selection] [Value]
-------------- -------------- -----------
مشکی انتخاب رنگ 1
زرشکی انتخاب رنگ 16
آبی انتخاب رنگ 4
Can`t теперь с этим кодам.
хороший мой друг. ... – RedArmy