Skip to content

SQL Test Queries Membership parameters

David Lidström edited this page Nov 5, 2017 · 2 revisions

Membership filters for the group membership of the current user for a specific field.

Thanks to the following sites for explaining this a bit. I hope I've understood it all correctly!

SQL Test Queries - Membership #001

Get all rows AssignedTo any of the groups for the current user

  1. "SELECT * FROM List1 WHERE AssignedTo = ? ", [camlsql.membership('CurrentUserGroups')]
<View>
    <Query>
        <Where>
            <Membership Type="CurrentUserGroups">
                <FieldRef Name="AssignedTo" />
            </Membership>
        </Where>
    </Query>
</View>

SQL Test Queries - Membership #002

Get rows assigned to users (not groups)

  1. "SELECT * FROM List1 WHERE AssignedTo = ?", [camlsql.membership('SPWeb.AllUsers')]
<View>
    <Query>
        <Where>
            <Membership Type="SPWeb.AllUsers">
                <FieldRef Name="AssignedTo" />
            </Membership>
        </Where>
    </Query>
</View>

SQL Test Queries - Membership #003

Error when not providing a SPGroup ID

  1. "SELECT * FROM List1 WHERE AssignedTo = ?", [camlsql.membership('SPGroup')]
Uncaught [camlsql] When using SPGroup you must specify a numeric GroupID

SQL Test Queries - Membership #004

Error when provided SPGroupID is not a number

  1. "SELECT * FROM List1 WHERE AssignedTo = ?", [camlsql.membership('SPGroup', "test")]
Uncaught [camlsql] When using SPGroup you must specify a numeric GroupID

SQL Test Queries - Membership #005

Get all list items assigned to members of the specified group

  1. "SELECT * FROM List1 WHERE AssignedTo = ?", [camlsql.membership('SPGroup', 5)]
<View>
    <Query>
        <Where>
            <Membership Type="SPGroup" ID="5">
                <FieldRef Name="AssignedTo" />
            </Membership>
        </Where>
    </Query>
</View>

SQL Test Queries - Membership #006

Get all list items assigned to users (not groups)

  1. "SELECT * FROM List1 WHERE AssignedTo = ?", [camlsql.membership('SPWeb.Allusers')]
<View>
    <Query>
        <Where>
            <Membership Type="SPWeb.AllUsers">
                <FieldRef Name="AssignedTo" />
            </Membership>
        </Where>
    </Query>
</View>

SQL Test Queries - Membership #007

Assigned to the group site collection but not the ones assigned to the site

  1. "SELECT * FROM List1 WHERE AssignedTo = ?", [camlsql.membership('SPWeb.Groups')]
<View>
    <Query>
        <Where>
            <Membership Type="SPWeb.Groups">
                <FieldRef Name="AssignedTo" />
            </Membership>
        </Where>
    </Query>
</View>

SQL Test Querie's - Membership #008

Assigned to users who have received rights to the site (not through a group).

  1. "SELECT * FROM List1 WHERE AssignedTo = ?", [camlsql.membership('SPWeb.Users')]
<View>
    <Query>
        <Where>
            <Membership Type="SPWeb.Users">
                <FieldRef Name="AssignedTo" />
            </Membership>
        </Where>
    </Query>
</View>