Op basis van uw voorbeeldgegevens en resultaten, een GROUP BY geeft u de resultaten die u zoekt:
SELECT
domain,
MIN(creationdate) AS creationdate,
value1,
value2
FROM mytable
GROUP BY domain, value1, value2
Aanvulling :@Arka heeft bijgewerkte voorbeeldgegevens verstrekt waarbij de value 1 en value 2 kolommen hebben verschillende waarden (in het origineel waren ze hetzelfde). Dat verandert de vraag in dit:
SELECT domain, creationdate, value1, value2
FROM mytable
WHERE (domain, creationdate) IN (
SELECT domain, MIN(creationdate)
FROM mytable
GROUP BY domain)
De subquery krijgt een lijst met de vroegste creationdate voor elk domain , en de buitenste query selecteert alleen rijen waar het domain en creationdate overeenkomen met de subquerywaarden.