(for $areaData in collection('mycollection') let $areaName := $areaData/Contry group by $areaName return $areaData )[position() lt 100]
This will always give you an empty sequence, because there are no "Contry" elements, at least not in your sample data.
Can you please suggest me how can we get the top 100 records based on the Country name
What do you mean with "Top 100"? If you are interested in the first 100 entries of your database, and if you want to have all records grouped by their country, try this:
(for $r in collection('mycollection')/Data/R group by $country := $r/Country return $r)[position() lt 100]
Please do the need full on this/