Expressions
Table of Contents
Expressions can be used in the field list of a Select, in Insert values, in Update assignments and in Where clauses.
- Numbers: 10, -6, 3.14159
- Strings: 'single quoted' or "double quoted". A doubled quote ('It''s') is not supported. A quote that follows a backslash does not end the string, but the backslash is kept: 'It's' returns It's.
- Null: null
| Operator | Meaning |
| + | Adds numbers. When either side is a string, the values are concatenated: 'Id: ' + 5 returns 'Id: 5'. |
| - * / | Subtraction, multiplication and division. |
| % | Remainder (modulo). |
| Bitwise exclusive-or. Use Pow for exponentiation. | |
| ( ) | Grouping, with standard order of operations. |
A null on either side of + makes the result null (null propagation). Concat skips nulls instead.
These are used in Where clauses and join ON conditions:
| Operator | Meaning |
| = | Equal (strings are compared without regard to case). |
| != | Not equal. The <> form is not supported. |
| > >= < <= | Numeric comparisons. |
| LIKE, NOT LIKE | Pattern matching, see Like. |
| BETWEEN, NOT BETWEEN | Range matching, see Between. |
Comparison operators can only be used in WHERE and ON clauses. Elsewhere, use the boolean functions such as IsEqual, IsGreater and IsLike, which return 1 or 0.
-- A line comment.
SELECT Id, Name FROM WordList:Language -- A trailing comment.
/* A block
comment. */Use Declare to define a variable for the rest of the script. Variables are referenced with an @ prefix. Applications using the client API pass parameters the same way, see Client.
DECLARE @Language = 2
SELECT Text FROM WordList:Word WHERE LanguageId = @LanguageEvery SELECT needs a FROM clause. To evaluate expressions that don't read any documents, select from the built-in Single schema, which contains exactly one document.
SELECT 10 + 10 as Twenty, 'Hello' + ' ' + 'World' as Greeting, Guid() as Id FROM SingleSQL :: ToProper
Returns the value with the first letter of each word capitalized (title case).
SQL :: ToString
Returns the number as a string, so that + concatenates it instead of adding it.
SQL :: ToUpper
Returns the value converted to upper case.
SQL :: Transaction
Transactions make a group of statements all-or-nothing.
SQL :: Trim
Removes white space from the start and end of the value. When characters is given, each of those characters is removed from the start and end instead.
SQL :: Update
Update changes fields of existing documents.
SQL :: Variance
Returns the population variance of the values in each group: how far the values are spread from their mean.
SQL :: Where
The where clause filters the documents read, updated or deleted by a statement.