SharePoint: How to get Top 5 records by using CAML

2020-04-02 02:51发布

问题:

I have already created a webpart to show the data from list, but I really want is to only show top 5 records from that list (by using CAML query).

Does anyone know how to do this? Many thanks.

<Query>
   <OrderBy>
      <FieldRef Name='ID' Ascending='False' />
   </OrderBy>
</Query>

回答1:

You could set the RowLimit property of your SPQuery object.

The <RowLimit> tag is in the schema definition of a view (direct child of <View>) and therefore cannot be nested inside a <Query> tag.



回答2:

The below code shows top 5 records from the list (by using CAML query).

SPQuery spQuery = new SPQuery();
spQuery.Query = "<OrderBy><FieldRef Name='ID' Ascending='FALSE'/></OrderBy>";
spQuery.RowLimit = 5;


回答3:

If you want to construct other simply caml queries try this tool. http://www.camldesigner.com/

P.s. tool doesn`t construct a "paginate" caml queries with SPListItemCollectionPosition.