How to use group by without using aggreagation function : I am trying to find the row number of the price while grouping them with respect to their ProductId. For Product Id = 1 Rank of Price(where price =1000 ) should be smt. For productId 3 rank of price (=1000) should be sth.

Q1- How can I find row number of price for different productId in same table? 

Q2- How can I achieve this using group by without aggregation for Row_number.

    ProductId Price
    1         2000
    1         1600
    1         1000
    2         2200
    2         1000
    2         3250
    3         1000
    3         2500
    3         1750

So result should be

    ProductId Price PriceRank
    1         1000  3
    2         1000  2
    3         1000  1

here u can see my code

    SELECT ProductId,ROW_NUMBER() 
        OVER (ORDER BY price ASC) AS PriceRank
    FROM product
    WHERE price =1000
    group by ProductId