show distinct products basis a meta value

I have a woocommerce site with lets say 100 products.
each product has a meta key and corresponding meta value.
the meta value is not unique. i.e Products would have same meta value.

lets say there are 20 unique meta values distributed over 100 products, 5 each.

Now I want to display 20 products only. such that once the first product with a meta value is displayed. no other product with the same meta value is displayed.

So only 20 first products with the unique meta values is displayed.
So the total 20 products displayed have unique meta values only.

Solutions Collecting From Web of "show distinct products basis a meta value"