Скажем, у меня есть таблица с именем "xml", в которой файлы XML хранятся в одном столбце "данные". Как мне написать запрос MySQL, который запускает XPath и возвращает только строки, соответствующие этому XPath?
SELECT * FROM xml WHERE EXTRACTVALUE(data, '<xpath-expr>') != '';
Тем не менее, вы должны заметить, что MySQL поддерживает XPath.
EXTRACTVALUE()
Я только что получил ответ от коллеги, кажется, часто помогает обрезка xml:
select * from xml where trim(both '\r\n' from ExtractValue(xml, '/some/xpath')) = 'value';