MySQL do aktualizacji atrybutu XML

W ładowaniu danych wydaje się, że niektóre atrybuty XML są mapowane niepoprawnie i teraz próbuję to naprawić, ale walczę z obsługą MySQL w tej kolumnie XML.

Chcę poprawić atrybuty XML (Nie wartości) dla wszystkich wystąpień pola (z atrybutem 'tag = "520"') z podpole (z atrybutem 'code = "3"'). Zapytanie poniżej zwraca 0 zmienionych wierszy, znaleziono 1 wiersz. Wszelkie wskazówki, jak to osiągnąć.

UPDATE biblioitems
SET marcxml = UpdateXML(marcxml,'datafield[@tag="520"]/subfield[@code="3"]',
                     'datafield[@tag="520"][@ind1="3"]/subfield[@code="a"]')
WHERE biblionumber = '220405';

Fragment XML dołączony dla jasności:

Oryginalny fragment

<datafield tag="300" ind1=" " ind2=" ">
  <subfield code="f">article</subfield>
</datafield>
<datafield tag="520" ind1=" " ind2=" ">
  <subfield code="3">A description of something here</subfield>
</datafield>
<datafield tag="655" ind1=" " ind2=" ">
  <subfield code="a"></subfield>
</datafield>

Czego chcę w wyniku:

<datafield tag="300" ind1=" " ind2=" ">
  <subfield code="f">article</subfield>
</datafield>
<datafield tag="520" ind1="3" ind2=" ">
  <subfield code="a">A description of something here</subfield>
</datafield>
<datafield tag="655" ind1=" " ind2=" ">
  <subfield code="a"></subfield>
</datafield>

Nie udało się ustalić, jak podświetlić zmianę w bloku kodu (jest to atrybut ind1 w polu danych tag = „520” i powiązane z nim atrybuty podpola)

questionAnswers(3)

yourAnswerToTheQuestion