Как удалить узел, если его имя содержит определенное ключевое слово?

С помощью Xquery в sql server из xml нужно удалить все узлы, имя которых содержит "key". Как я могу это сделать?

<xml>
    <Node_key_node>
        Text
    </Node_key_node>
    <Node_node>
        Text
    </Node_node>
    <Node_key_node>
        Text
    </Node_key_node>
</xml>

Должно остаться:

<xml>
    <Node_node>
        Text
    </Node_node>
</xml>

Ответы (1 шт):

Автор решения: Alexander Petrov
update #t
set col.modify('
    delete //*[contains(local-name(.), "key")]
')

Где #t - имя таблицы, col - имя xml-колонки.

→ Ссылка