У меня есть XML-файл, который содержит данные из различных таблиц в базе данных VistaDB, которые я хочу использовать для переноса данных в другую базу данных VistaDB.
Новая база данных имеет несколько иную схему, поскольку стало очевидно, что то, что в то время представляло собой разумную структуру данных (основанную на наследовании), которая позволяло бы дальнейшее расширение по нескольким предметным областям, не будет работать как предназначенный.
В результате XML-файл содержит разделы, которые представляют собранные данные из этих таблиц, как показано ниже;
<?xml version="1.0" encoding="utf-8"?>
<RootElement>
<Contact>
<Oid>eeeba14b-ee5e-4051-aaea-686a4d79820e</Oid>
<ContactNumber>CON0000003</ContactNumber>
<ContactType>3</ContactType>
<DefaultCurrency>0</DefaultCurrency>
</Contact>
<ContactBase>
<Oid>eeeba14b-ee5e-4051-aaea-686a4d79820e</Oid>
<CurrentBalance>-2757.52</CurrentBalance>
<FirstInvoiceDate>2016-01-01T00:00:00+00:00</FirstInvoiceDate>
<LastInvoiceDate>2019-04-18T15:48:51.7242817+01:00</LastInvoiceDate>
</ContactBase>
<CommonBase>
<Oid>eeeba14b-ee5e-4051-aaea-686a4d79820e</Oid>
<IsActive>true</IsActive>
<ContactBusinessName>Fred Flintstone</ContactBusinessName>
</CommonBase>
</RootElement>
Есть ли простой способ, возможно, с использованием чего-то вроде XQuery, с которым я не слишком знаком, эффективно объединять эти отдельные разделы в один раздел, используя общий общий элемент Oid из этого одного файла, или было бы проще просто разделите их на свежие XML-файлы, а затем объедините их - практика, с которой я знаком и могу это сделать?