SPQuery Based Joins In SharePoint 2010
While working with a client today on some SharePoint 2010 code, the requirement can up to do some query based joins. I hadn't done this before in SP 2010, but it's pretty sweet. The only way I have gotten around it in previous versions was converting the list data into data tables and then working with it in that format. Natively working with it is a whole lot less code, whole lot less complicated too. Even for permanent join type stuff, you can use projected fields which is really nice.
So, what's it look like? Consider the following snippet:
-
<View>
-
<ViewFields>
-
<FieldRef Name="ID_X" />
-
<FieldRef Name="ID"/>
-
<FieldRef Name="Title"/>
-
</ViewFields>
-
<Joins>
-
<Join Type="LEFT" ListAlias="Test">
-
<Eq>
-
<FieldRef Name="ID_List_X" RefType="ID" />
-
<FieldRef List="X" Name="ID" />
-
</Eq>
-
</Join>
-
</Joins>
-
<ProjectedFields>
-
<Field Name="ID_X" Type="Lookup" List="X" ShowField="ID" />
-
</ProjectedFields>
-
</View>
Pretty easy!
Related posts:
- SPView Field Comparison
- Disable Datasheet View If You Have Super Large Lists In SharePoint 2010
- SharePoint 2010 Lookup Columns and Performance Considerations
- SharePoint ECMAScript (Client Object Model) Empty List Helper
- Get SharePoint List View Items
2 Comments »
RSS feed for comments on this post. TrackBack URL























Articles & Research
SharePoint Architecture
Research Methodology
Personal/Off-Topic
Article Or Research Filed Under 

[...] SPQuery Based Joins In SharePoint 2010 [...]
Pingback by SharePoint 2010: Recopilatorio de enlaces interesantes (VII! - Blog del CIIN) — May 1, 2010 @ 12:10 pm
you can usa LINQ to do joins, it’s easier IMHO, CAML can be used as a filter
Comment by decatec — June 5, 2010 @ 2:38 pm