Building search queries in SharePoint 2013

SharePoint 2013

Learn about the search syntax supported in SharePoint Server 2013 for building query rules and search queries.

Last modified: September 17, 2015

Applies to: SharePoint Server 2013

In this article
Supported search syntax in SharePoint Server 2013 for building search queries
In this section
Additional resources

SharePoint Server 2013 search supports Keyword Query Language (KQL) and FAST Query Language (FQL) search syntax for building search queries.

Keyword Query Language (KQL)

KQL is the default query language for building search queries. Using KQL, you specify the search terms or property restrictions that are passed to the SharePoint search service.

FAST Query Language (FQL)

FQL is a structured query language that supports advanced query operators. You can use FQL when you want to create complex queries that you want to pass programmatically to the SharePoint search service. FQL isn’t intended to be exposed to end users, and is disabled by default.

To enable FQL, use the EnableFQL property. Then, copy the default result source and modify the Query Transformation string {?{searchTerms} -ContentClass=urn:content-class:SPSPeople}, at one of these levels -- Search Service Application (SSA), Site Collection, or Site -- and in one of the following ways:

  • Remove the KQL filter, -ContentClass:urn:content-class:SPSPeople, from the Query Transformation. The resulting Query Transformation string will be: {?{searchTerms}}

  • Replace the Query Transformation string with an FQL equivalent, such as {?andnot({searchTerms},filter(contentclass:"urn:content-class:SPSPeople*"))}.

For more information about result sources and how they work, see to: Understanding result sources and Configure result sources for search in SharePoint Server 2013.