Updated on 2023-10-23 GMT+08:00

Simple Expressions

Logical Expressions

Logical Operators lists the operators and calculation rules of logical expressions.

Comparative Expressions

Comparison Operators lists the common comparative operators.

In addition to comparative operators, you can also use the following sentence structure:

  • BETWEEN operator

    a BETWEEN x AND y is equivalent to a >= x AND a <= y.

    a NOT BETWEEN x AND y is equivalent to a < x OR a > y.

  • To check whether a value is null, use:

    expression IS NULL

    expression IS NOT NULL

    or an equivalent (non-standard) sentence structure:

    expression ISNULL

    expression NOTNULL

    Do not write expression=NULL or expression<>(!=)NULL, because NULL represents an unknown value, and these expressions cannot determine whether two unknown values are equal.

  • is distinct from/is not distinct from
    • is distinct from

      If the data types and values of A and B are different, the value is true.

      If the data types and values of A and B are the same, the value is false.

      Empty values are considered the same.

    • is not distinct from

      If the data types and values of A and B are different, the value is false.

      If the data types and values of A and B are the same, the value is true.

      Empty values are considered the same.

Pseudocolumn

ROWNUM

ROWNUM is a pseudocolumn that returns a number indicating the row number of the result obtained from the query. The value of ROWNUM in the first row is 1, the value of ROWNUM in the second row is 2, and so on.

The return type of ROWNUM is BIGINT. ROWNUM can be used to limit the total number of rows returned by a query. For example, the following statement limits the maximum number of records returned from the table Students to 10.

select * from Students where rownum <= 10;

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
openGauss=# SELECT 2 BETWEEN 1 AND 3 AS RESULT;
 result 
----------
 t
(1 row)

openGauss=# SELECT 2 >= 1 AND 2 <= 3 AS RESULT;
 result 
----------
 t
(1 row)

openGauss=# SELECT 2 NOT BETWEEN 1 AND 3 AS RESULT;
 result 
----------
 f
(1 row)

openGauss=# SELECT 2 < 1 OR 2 > 3 AS RESULT;
 result 
----------
 f
(1 row)

openGauss=# SELECT 2+2 IS NULL AS RESULT;
 result 
----------
 f
(1 row)

openGauss=# SELECT 2+2 IS NOT NULL AS RESULT;
 result 
----------
 t
(1 row)

openGauss=# SELECT 2+2 ISNULL AS RESULT;
 result 
----------
 f
(1 row)

openGauss=# SELECT 2+2 NOTNULL AS RESULT;
 result 
----------
 t
(1 row)

openGauss=# SELECT 2+2 IS DISTINCT FROM NULL AS RESULT;
 result 
----------
 t
(1 row)

openGauss=# SELECT 2+2 IS NOT DISTINCT FROM NULL AS RESULT;
 result  
----------
 f
(1 row)