<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Find Duplicates - Accounting for Related Records in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/find-duplicates-accounting-for-related-records/m-p/103908#M8013</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hey Robert, thanks for the reply. This would be part of a process that would be used in an ongoing fashion. It's part of a regular QA/QC process we run on our corporate data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'd like to flag features where&amp;nbsp;&lt;EM&gt;all&lt;/EM&gt; the geometry and attributes are the same except for:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;OBJECTID&lt;/LI&gt;&lt;LI&gt;GLOBALID&lt;/LI&gt;&lt;LI&gt;GUIDs&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But, if the features have related child records, I'd only like to flag those as duplicates if they have identical related records. We use either GLOBALID or GUID fields as the primary keys in relationship classes. Suppose the following Feature Class A relates to Table B in a one-to-many relationship:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Feature Class A&lt;/P&gt;&lt;TABLE class="j-table jiveBorder" style="border: 1px solid #c6c6c6;" width="800"&gt;&lt;THEAD&gt;&lt;TR style="background-color: #efefef; height: 25px;"&gt;&lt;TH style="width: 188px; height: 25px;"&gt;Geometry&lt;/TH&gt;&lt;TH style="width: 188px; height: 25px;"&gt;Field 1&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field 2&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field 3&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;GUID (PK)&lt;/TH&gt;&lt;/TR&gt;&lt;/THEAD&gt;&lt;TBODY&gt;&lt;TR style="height: 51px;"&gt;&lt;TD style="width: 188px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 188px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;All&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;The&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;{GUID1}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;All&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;The&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;{GUID2}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Table&amp;nbsp;B&lt;/P&gt;&lt;TABLE class="j-table jiveBorder" style="border: 1px solid #c6c6c6;" width="800"&gt;&lt;THEAD style="border: inherit solid inherit;"&gt;&lt;TR style="background-color: #efefef; height: 25px;"&gt;&lt;TH style="width: 188px; height: 25px;"&gt;Field 4&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field 5&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field&lt;SPAN&gt;&amp;nbsp;6&lt;/SPAN&gt;&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;GUID (FK)&lt;/TH&gt;&lt;/TR&gt;&lt;/THEAD&gt;&lt;TBODY style="border: inherit solid inherit;"&gt;&lt;TR style="height: 51px;"&gt;&lt;TD style="width: 188px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Values&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Here&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;{GUID1}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;And&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Here&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;{GUID1}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Values&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Here&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;{GUID2}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;And&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Here&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;{GUID2}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So,&amp;nbsp;in Feature Class A, the two features have the same geometry, and same attributes except for GUID. Each one has two related records in Table B - but they are the same set of related records. So in this case I would like to flag the two features as duplicates. But in this case:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Feature Class A&lt;/P&gt;&lt;TABLE class="j-table jiveBorder" style="border: 1px solid #c6c6c6;" width="800"&gt;&lt;THEAD style="border: inherit solid inherit;"&gt;&lt;TR style="background-color: #efefef; height: 25px;"&gt;&lt;TH style="width: 188px; height: 25px;"&gt;Geometry&lt;/TH&gt;&lt;TH style="width: 188px; height: 25px;"&gt;Field 1&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field 2&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field 3&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;GUID (PK)&lt;/TH&gt;&lt;/TR&gt;&lt;/THEAD&gt;&lt;TBODY style="border: inherit solid inherit;"&gt;&lt;TR style="height: 51px;"&gt;&lt;TD style="width: 188px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 188px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;All&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;The&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;{GUID1}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;All&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;The&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;{GUID2}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Table&amp;nbsp;B&lt;/P&gt;&lt;TABLE class="j-table jiveBorder" style="border: 1px solid #c6c6c6;" width="800"&gt;&lt;THEAD style="border: inherit solid inherit;"&gt;&lt;TR style="background-color: #efefef; height: 25px;"&gt;&lt;TH style="width: 188px; height: 25px;"&gt;Field 4&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field 5&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field&lt;SPAN&gt;&amp;nbsp;6&lt;/SPAN&gt;&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;GUID (FK)&lt;/TH&gt;&lt;/TR&gt;&lt;/THEAD&gt;&lt;TBODY style="border: inherit solid inherit;"&gt;&lt;TR style="height: 51px;"&gt;&lt;TD style="width: 188px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Values&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Here&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;{GUID1}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;And&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Here&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;{GUID1}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Values&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Here&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;{GUID2}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;&lt;STRONG&gt;But&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;&lt;STRONG&gt;I'm&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;&lt;STRONG&gt;Different!&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;&lt;STRONG&gt;{GUID2}&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The records related to the feature with GUID2 are different than those related to the feature with GUID1, so I would like to&amp;nbsp;&lt;STRONG&gt;not&amp;nbsp;&lt;/STRONG&gt;flag the two features as duplicate.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Make sense? I might not be doing a good job explaining it. Basically I want a way to identify features with the same geometry, attributes, and identical related records, excluding any OBJECTID, GLOBALID, or GUID fields which would be unique by default.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Micah&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 26 Mar 2019 18:32:46 GMT</pubDate>
    <dc:creator>MicahBabinski</dc:creator>
    <dc:date>2019-03-26T18:32:46Z</dc:date>
    <item>
      <title>Find Duplicates - Accounting for Related Records</title>
      <link>https://community.esri.com/t5/python-questions/find-duplicates-accounting-for-related-records/m-p/103906#M8011</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Greetings,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am in need of a way to efficiently identify features/records that are duplicates within a feature class or table, while also accounting for any child records that might exist. Right now, I am checking for duplicates using&amp;nbsp;&lt;A class="" href="http://desktop.arcgis.com/en/arcmap/10.5/tools/data-management-toolbox/find-identical.htm" title="http://desktop.arcgis.com/en/arcmap/10.5/tools/data-management-toolbox/find-identical.htm"&gt;Find Identical&lt;/A&gt;. I exclude fields that are OBJECTID, GLOBALID, or GUID, but otherwise evaluate all other fields for duplicates. We have datasets that participate in one or more relationship classes, sometimes as many as two relates deep. I'd like to avoid flagging parent features/records as duplicates if they have child records which differ from another otherwise-identical feature in the parent feature class.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is part of a suite of QA/QC tools that I've created using, Python, arcpy, the geoprocessing toolbox, plus a couple custom bits (e.g. if the feature class is above a certain number of features I bring it into sqlite and check for duplicates there for performance), so any solution that leverages those capabilities would be preferable.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Micah&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 26 Mar 2019 16:08:37 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/find-duplicates-accounting-for-related-records/m-p/103906#M8011</guid>
      <dc:creator>MicahBabinski</dc:creator>
      <dc:date>2019-03-26T16:08:37Z</dc:date>
    </item>
    <item>
      <title>Re: Find Duplicates - Accounting for Related Records</title>
      <link>https://community.esri.com/t5/python-questions/find-duplicates-accounting-for-related-records/m-p/103907#M8012</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Is it an ongoing thing or something you need to do to clean up now what you have?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Are you looking to find features where ALL attributes are duplicate or find those that have at least a single attribute duplicated.&amp;nbsp; Do all feature share the same geometry?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 26 Mar 2019 18:08:55 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/find-duplicates-accounting-for-related-records/m-p/103907#M8012</guid>
      <dc:creator>RobertBorchert</dc:creator>
      <dc:date>2019-03-26T18:08:55Z</dc:date>
    </item>
    <item>
      <title>Re: Find Duplicates - Accounting for Related Records</title>
      <link>https://community.esri.com/t5/python-questions/find-duplicates-accounting-for-related-records/m-p/103908#M8013</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hey Robert, thanks for the reply. This would be part of a process that would be used in an ongoing fashion. It's part of a regular QA/QC process we run on our corporate data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'd like to flag features where&amp;nbsp;&lt;EM&gt;all&lt;/EM&gt; the geometry and attributes are the same except for:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;OBJECTID&lt;/LI&gt;&lt;LI&gt;GLOBALID&lt;/LI&gt;&lt;LI&gt;GUIDs&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But, if the features have related child records, I'd only like to flag those as duplicates if they have identical related records. We use either GLOBALID or GUID fields as the primary keys in relationship classes. Suppose the following Feature Class A relates to Table B in a one-to-many relationship:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Feature Class A&lt;/P&gt;&lt;TABLE class="j-table jiveBorder" style="border: 1px solid #c6c6c6;" width="800"&gt;&lt;THEAD&gt;&lt;TR style="background-color: #efefef; height: 25px;"&gt;&lt;TH style="width: 188px; height: 25px;"&gt;Geometry&lt;/TH&gt;&lt;TH style="width: 188px; height: 25px;"&gt;Field 1&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field 2&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field 3&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;GUID (PK)&lt;/TH&gt;&lt;/TR&gt;&lt;/THEAD&gt;&lt;TBODY&gt;&lt;TR style="height: 51px;"&gt;&lt;TD style="width: 188px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 188px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;All&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;The&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;{GUID1}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;All&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;The&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;{GUID2}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Table&amp;nbsp;B&lt;/P&gt;&lt;TABLE class="j-table jiveBorder" style="border: 1px solid #c6c6c6;" width="800"&gt;&lt;THEAD style="border: inherit solid inherit;"&gt;&lt;TR style="background-color: #efefef; height: 25px;"&gt;&lt;TH style="width: 188px; height: 25px;"&gt;Field 4&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field 5&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field&lt;SPAN&gt;&amp;nbsp;6&lt;/SPAN&gt;&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;GUID (FK)&lt;/TH&gt;&lt;/TR&gt;&lt;/THEAD&gt;&lt;TBODY style="border: inherit solid inherit;"&gt;&lt;TR style="height: 51px;"&gt;&lt;TD style="width: 188px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Values&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Here&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;{GUID1}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;And&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Here&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;{GUID1}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Values&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Here&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;{GUID2}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;And&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Here&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;{GUID2}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So,&amp;nbsp;in Feature Class A, the two features have the same geometry, and same attributes except for GUID. Each one has two related records in Table B - but they are the same set of related records. So in this case I would like to flag the two features as duplicates. But in this case:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Feature Class A&lt;/P&gt;&lt;TABLE class="j-table jiveBorder" style="border: 1px solid #c6c6c6;" width="800"&gt;&lt;THEAD style="border: inherit solid inherit;"&gt;&lt;TR style="background-color: #efefef; height: 25px;"&gt;&lt;TH style="width: 188px; height: 25px;"&gt;Geometry&lt;/TH&gt;&lt;TH style="width: 188px; height: 25px;"&gt;Field 1&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field 2&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field 3&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;GUID (PK)&lt;/TH&gt;&lt;/TR&gt;&lt;/THEAD&gt;&lt;TBODY style="border: inherit solid inherit;"&gt;&lt;TR style="height: 51px;"&gt;&lt;TD style="width: 188px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 188px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;All&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;The&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;{GUID1}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;All&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;The&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;{GUID2}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Table&amp;nbsp;B&lt;/P&gt;&lt;TABLE class="j-table jiveBorder" style="border: 1px solid #c6c6c6;" width="800"&gt;&lt;THEAD style="border: inherit solid inherit;"&gt;&lt;TR style="background-color: #efefef; height: 25px;"&gt;&lt;TH style="width: 188px; height: 25px;"&gt;Field 4&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field 5&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;Field&lt;SPAN&gt;&amp;nbsp;6&lt;/SPAN&gt;&lt;/TH&gt;&lt;TH style="width: 189px; height: 25px;"&gt;GUID (FK)&lt;/TH&gt;&lt;/TR&gt;&lt;/THEAD&gt;&lt;TBODY style="border: inherit solid inherit;"&gt;&lt;TR style="height: 51px;"&gt;&lt;TD style="width: 188px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Values&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Here&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 51px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;{GUID1}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;And&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;Here&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #ff6600;"&gt;{GUID1}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Same&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Values&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;Here&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;{GUID2}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 50px;"&gt;&lt;TD style="width: 188px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;&lt;STRONG&gt;But&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;&lt;STRONG&gt;I'm&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;&lt;STRONG&gt;Different!&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD style="width: 189px; height: 50px;"&gt;&lt;SPAN style="color: #008000;"&gt;&lt;STRONG&gt;{GUID2}&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The records related to the feature with GUID2 are different than those related to the feature with GUID1, so I would like to&amp;nbsp;&lt;STRONG&gt;not&amp;nbsp;&lt;/STRONG&gt;flag the two features as duplicate.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Make sense? I might not be doing a good job explaining it. Basically I want a way to identify features with the same geometry, attributes, and identical related records, excluding any OBJECTID, GLOBALID, or GUID fields which would be unique by default.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Micah&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 26 Mar 2019 18:32:46 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/find-duplicates-accounting-for-related-records/m-p/103908#M8013</guid>
      <dc:creator>MicahBabinski</dc:creator>
      <dc:date>2019-03-26T18:32:46Z</dc:date>
    </item>
  </channel>
</rss>

