title: How to get unique set of rows from SQL where uniqueness is defined by 2 columns?
body: <p>If I have a table as follows:</p>
  
  <p>ID | Name | Category | Parent | URL | LastModified</p>
  
  <p>If two rows have the same Name and parent, then they are not unique.  How do I get the unique set of rows in this case (but return more than the columns that make them unique)?</p>
  
  <p>So, for more details:
  This is a corporate keywords table, where keywords are organized by category.  Each keyword can only have one category. Each keyword can have child keywords, so if parent=0 or NULL, it is a root keyword.  If keywords have the same name and parent in a category, then they are not unique (regardless of the other columns). If two keywords have the same name and category, and parent=0 or NULL then they are not unique. If there are duplicates, then I only want the 1st one.  The reason is I am putting these into a system that will not allow a keyword to have two children with the same name.</p>
  
  <p>I would also like to see what rows ARE duplicates to see what is causing me the trouble!</p>
  
  <p>Thanks a million so far for excellent responses.  I am obviously not a SQL guy... :(</p>