This page provides some examples of Cinchy Query Language in action.
This section breaks down some example queries for you to get a feel for the power of Cinchy Query Language (CQL) and how to use it. These simple examples provide a point of reference for you to create more complex queries.
For more information on saved queries, see our Builder Guide.
This query is useful for pulling a list of specific user information from a table. This query will return a list with Names (which will be returned under the 'Full Name' label), Emails, and Companies of the users listed in the [Contacts].[People] table. This example only includes entries where the [Name] isn't null, and where the [Tags].[Name] column is set to 'Analyst'
In this example we want to find all System Tables in our instance. System Tables come pre-packaged with Cinchy and live under the 'Cinchy' domain. You can query for a list of them using the below CQL, where the query pulls the 'Name' column from the [Tables] table, in the [Cinchy] Domain. There's also a filter to only return results where the table [Domain] is tagged as 'Cinchy**'**.
In this example, we want to generate a list of the system columns attached to the [Policies] table in the [Compliance] domain. We do so by putting the * symbol in the SELECT statement. There's also an optional ORDER BY clause, to order results based on the input values.
This example has a table with a view for My Open Tasks. This view uses currentuserID=(), which only shows the tasks assigned to the user currently logged in.
The below query finds the creator of any specific table, based on its tablecinchyid
. The query pulls the Table Name and the Created By user information from the [Cinchy].[Tables] table. By using [Cinchy Id] = @tablecinchyid, a search box will appear when you run this query, where you can insert the Table ID number of the table you are curious about.
The example below uses a query to return a list of all tables created by a specific user. It pulls the Full Name of the table and the name of the creator from the [Cinchy].[Tables] table. By using [Created By].[Name] = @author, running the query will generate a search box where you can write in the full name of the user you are searching for information on.
You can use If/Else statements in CQL to specify conditions. The example below uses a query to vote for user awards, and uses IF statements to look for the currentuserid() to determine the results of the query.
If the current user is the same as the nominated user, the query will return a message stating "Hey! No voting for yourself!"
The second condition checks whether the current user is the same as the user who created the nomination. In this case, the query will return a message stating "Hey! No voting for your own nomination!"
If neither of the two IF statements apply, the final ELSE triggers to capture the vote (using the INSERT INTO statement), and a message is returned stating "Your vote has been recorded. Great work!"
This query returns the Name, Domain, and timestamp of deletion for all tables within [Cinchy].[Tables] where [Deleted] IS NOT NULL
. We've added an option WHERE clause to ignore any data from the 'Sandbox' Domain.