У меня есть XML, который выглядит так:
<XML>
<Item id="1">
<certificate_no>value</certificate_no>
<other_value></other_value>
</Item>
<Item id="2">
<certificate_no></certificate_no>
<other_value></other_value>
</Item>
<Item id="3">
<other_value></other_value>
</Item>
</XML>
Мне нужно сделать sql, чтобы проверить, есть ли дубликаты certificate_no
в базе данных.
Сертификат может быть отозван, поэтому возможно иметь <certificate_no></certificate_no>
, а номер_оценки может быть пустым (отозван), изменен или вообще не изменять сертификат_Н (идентификатор: 3).
SQL, который я собираюсь использовать, выглядит следующим образом:
SELECT certificate_no from Item where (certificate_no='certificate_no' and id<>'id') or (certificate_no='certificate_no' and id<>'id')...
В настоящее время я использую //Item[not(certificate_no='')]
для получения узлов, которые certificate_no
не ""
(строка нулевой длины). Но я не знаю, если это фильтры
выход ID: 2 и ID: 3.