title: Way to find rows with a same ID and only keep one row
body: <p>I have a working query that will return some results(records) from my database, like:</p>
  
  <pre><code>123|John Williams|IL|M|06/01/2011|ACTIVE
  124|Mary Haque|NY|F|TERMINATED|06/30/2011
  124|Mary Haque|NY|F|07/01/2011|ACTIVE
  125|Alex Chan|VA|07/01/2011|ACTIVE
  126|Rob Kreb|VA|TERMINATED|06/20/2011
  </code></pre>
  
  <p>As you can see, the result is simply a list of customer records, while the last two fields indicate whether the member is active or terminated and associated active/terminated date.</p>
  
  <p>The complication now is, as you can see for member with ID 124 (Mary Haque), she has two records, and for this kind of two-record customer, I only want to keep the row where the member is active while totally ignore her terminated history. So for example, the desired output for the above should be:</p>
  
  <pre><code>123|John Williams|IL|M|06/01/2011|ACTIVE
  124|Mary Haque|NY|F|07/01/2011|ACTIVE
  125|Alex Chan|VA|07/01/2011|ACTIVE
  126|Rob Kreb|VA|TERMINATED|06/20/2011
  </code></pre>
  
  <p>as you can see, now Mary Haque only has her active information on the result. The above result is generate by a SQL "Select" query, but I couldn't simply append a "WHERE status=ACTIVE" to this query because I still want to keep the members that only has ONE record like Rob Kreb above even though he is terminated. I only want the filtering for TERMINATED member record to take place when a certain member has two records.</p>
  
  <p>FYI, my current query looks like this:</p>
  
  <pre><code>SELECT * FROM customer_change WHERE CUSTOMER_LOGIN NOT IN(SELECT CUSTOMER_LOGIN FROM  customer_full WHERE CUSTOMER_LOGIN IS NOT NULL)
  UNION
  SELECT * FROM customer_change WHERE CUSTOMER_POINTS=0 AND CUSTOMER_LOGIN NOT IN(SELECT CUSTOMER_LOGIN FROM customer_full WHERE CUSTOMER_POINTS=0 AND CUSTOMER_LOGIN IS NOT NULL)
  </code></pre>
  
  <p>Thanks for the help in advance!</p>