SharePoint 2010, you can finally do List Joins in CAML. This would be a great boon to the type of views that you can create in SharePoint and in code.
There is a catch – it looks like the field that you can use for joins must be a Lookup type field to the foreign list.
Join type can be LEFT or INNER.
Given that LINQ to SharePoint sits on top of CAML – all the LINQ join statements will translate properly as well.
When I first started developing with SharePoint, I really hated CAML.
In time, I’ve learnt to live with CAML, the lack of good tools drives me crazy. But it is a necessary evil when you work in SharePoint.