Operators
Arithmetic operators
The following arithmetic operators are supported:
| operator | description | 
|---|---|
| + | Add | 
| - | Subtract | 
| * | Multiply | 
| / | Divide | 
| = | Equals to | 
| > | Greater than | 
| < | Less than | 
| >= | Greater than or equal to | 
| <= | Less than or equal to | 
| <> | Not equal to | 
Examples
- 
Addition: Adding two columns together and creating a new column: .s.e"SELECT fare,tip,fare+tip as new_total FROM trips"
- 
Subtraction: Subtracting one column from another and creating a new column: .s.e"SELECT month,month-1 as prev_month FROM trips"
- 
Multiplying: Multiplying one column from another and creating a new column: // multiply * .s.e"SELECT distance,5280*distance as distance_feet FROM trips"
- 
Dividing: Dividing a column by a fixed value and creating a new column: // divide / .s.e"SELECT fare, fare/100 as fare_cents FROM trips"
- 
Equals: Returning only records that have a specific value in a column: // equal to = .s.e"SELECT * FROM trips where passengers=2"
- 
Inequalities: Applying filters: // equal to = .s.e"SELECT * FROM trips where passengers=2" // greater than >= .s.e"SELECT fare,tip,fare+tip as total FROM trips WHERE tip>0" // less than <= .s.e"SELECT * FROM trips WHERE fare<5" // greater than or equal to >= .s.e"SELECT * FROM trips WHERE distance>=12" // less than or equal to <= .s.e"SELECT * FROM trips WHERE fare<=5"
- 
Not equal: Do not return any records that meet a certain set of criteria: // not equal to <> .s.e"SELECT * FROM trips WHERE passengers<>1" // not equal to != .s.e"SELECT * FROM trips WHERE passengers!=1"
Logical operators
The following logical operators supported are:
| operator | description | 
|---|---|
| AND | TRUE if all the conditions separated by AND are TRUE | 
| OR | TRUE if any of the conditions separated by OR is TRUE | 
| NOT | Displays a record if the condition(s) is NOT TRUE | 
| BETWEEN | TRUE if the operand is within the range of comparisons | 
| IN | TRUE if the operand is equal to one of a list of expressions | 
| LIKE | TRUE if the operand matches a pattern | 
| IS NULL | TRUE if the value is NULL | 
Examples
- 
AND: only returning records that meet ALL criteria: // AND .s.e"SELECT * FROM trips WHERE passengers=3 AND vendor='DDS'"
- 
OR: returning records that meet ONE or MORE of the criteria: // OR .s.e"SELECT * FROM trips WHERE tip>20 OR fare>100"
- 
IN: specifying multiple values in a WHERE clause, which is a shorthand for multiple OR clauses: .s.e"SELECT * FROM trips WHERE payment_type IN ('CASH', 'CREDIT');"
- 
NOT: returning records that DO NOT meet the criteria: // NOT .s.e"SELECT * FROM trips WHERE NOT passengers=1"Info This a option is equivalent to <>and!=.
Between
Using between selects values within a given range. The values can be numbers, text, dates or datetimes.
Examples
- 
Records that fall between two numbers: .s.e"SELECT * FROM trips WHERE fare BETWEEN 10 AND 12;"
- 
Records that fall alphabetically between two text values: .s.e"SELECT * FROM trips WHERE payment_type BETWEEN 'CASH' AND 'DISPUTE';"
- 
Records that fall between two datetimes: .s.e"SELECT * FROM trips WHERE pickup_time BETWEEN '2009-01-01 00:30:00' AND '2009-01-01 00:35:00';"
- 
Records for a single day: .s.e"SELECT * FROM trips WHERE date BETWEEN '2009-01-01' AND '2009-01-02;"
Like
Using like is used in a WHERE clause to search for a specified pattern in a column. As in standard SQL syntax the following two wildcards are supported:
- The percent sign %represents zero, one, or multiple characters.
- The underscore sign _represents one, single character.
Examples
- 
Use %to return all records where a field begins with a letter:.s.e"SELECT * FROM trips WHERE payment_type LIKE 'C%';"
- 
Use _to search just leaving out one single character:.s.e"SELECT * FROM trips WHERE payment_type LIKE 'C_EDIT';"
Conditional operators
The following conditional operators are supported:
case [a] when b then x ... else y
coalesce
nullif
Note
Both the general and 'simple' comparison forms of case are supported.