SQLite XML SUBSTRING - PullRequest
       17

SQLite XML SUBSTRING

2 голосов
/ 20 февраля 2012

У меня есть столбец NVARCHAR в базе данных SQLite, в котором хранятся данные XML. Мне нужно удалить элемент XML в запросе SQLite.

Столбец XMLDATA будет содержать XML, подобный следующему: -

<Inspection>
<Enquiry>
</Enquiry>
<Enqid>282256</Enqid>
<TargetDate>16/12/2011</TargetDate>
</Inspection>

Мне нужно удалить элемент Enqid документа XML.

Я могу использовать подстроку, но сначала мне нужно найти местоположение индекса <Enqid>.

Я использую стандартный SQLite без дополнительных библиотек.

Ответы [ 2 ]

1 голос
/ 23 марта 2012

Вы пытались использовать LIKE

select * из MyTable, где XMLDATA LIKE '282256'

1 голос
/ 17 марта 2012

, если действительно должно быть в запросе SQLite, я не могу ничего лучше, чем вручную перечислить все строки, которые нужно удалить, например:

replace(replace(xmldata,
'<Enquiry>
</Enquiry>
', ''),
'<second_element></second_element>', '')
as "stripped xmldata"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...