If necessary, you can add the ORDER BY clause, if necessary, to the OVER part, if necessary.
Using CTE:
WITH example AS (
SELECT a.eventid,
a.upc_ean,
a.description,
a.size,
ROW_NUMBER() OVER(PARTITION BY a.eventi, a.upc_ean) AS rank
FROM YOUR_TABLE a)
SELECT x.eventid,
x.upc_ean,
x.description,
x.size
FROM example x
WHERE x.rank = 1
Without CTE:
SELECT x.eventid,
x.upc_ean,
x.description,
x.size
FROM (SELECT a.eventid,
a.upc_ean,
a.description,
a.size,
ROW_NUMBER() OVER(PARTITION BY a.eventi, a.upc_ean) AS rank
FROM YOUR_TABLE a) x
WHERE x.rank = 1
source
share