日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

條件函數

Hologres兼容PostgreSQL,支持使用標準的PostgreSQL語法進行開發,當前Hologres版本支持的函數是PostgreSQL的一個子集。本文為您介紹Hologres已支持的條件函數列表及使用用例。

函數

功能

CASE

在指定的條件表達式為TRUE時執行一組單個或多個語句。

COALESCE

返回參數列表中第一個非空表達式的值。

GREATEST

選擇表達式列表中的最大值。

IF

根據判斷條件選擇執行的語句。

說明

僅Hologres V2.1版本起支持IF函數。如果您的實例版本為V2.0及以下版本,請先升級實例版本,詳情請參見實例升級

LEAST

選擇表達式列表中的最小值。

NULLIF

判斷兩個表達式的值是否相等,如果相等,則結果返回NULL,反之返回第一個表達式的值。

示例數據

CASENULLIFGREATESTLEAST函數相關的示例均基于test示例數據。以下是創建表test并添加數據的命令示例。

CREATE TABLE test (
    a INT
);
INSERT INTO test (a) VALUES (1);
INSERT INTO test (a) VALUES (2);
INSERT INTO test (a) VALUES (3);

CASE

  • 描述:在指定的條件表達式為TRUE時執行一組單個或多個語句。

  • 示例

    SELECT a,
      CASE WHEN a=1 THEN 'one'            
           WHEN a=2 THEN 'two'            
           ELSE 'other'       
      END    
    FROM test;

    返回結果如下。

    a    case
    ----+-----------
    1    one
    2    two
    3    other

IF

僅Hologres V2.1版本起支持IF函數。如果您的實例版本為V2.0及以下版本,請先升級實例版本,詳情請參見實例升級

  • 描述:根據判斷條件選擇執行的語句。

    IF(condition, value_if_true, value_if_false)

    condition:判斷條件,如果判斷條件的結果為TRUE,返回第二個參數。如果判斷條件的結果為FALSE或為NULL,返回第三個參數。

  • 示例

    DROP TABLE IF EXISTS if_test;
    CREATE TABLE if_test (
        id int,
        name text,
        age int
    );
    
    INSERT INTO if_test VALUES ('1', 'a', '18'), ('2', 'b', '19'), ('3', 'c', '25'), ('4', 'd', '8'), ('5', 'e', '27'), ('6', 'f', '21');
    
    SELECT
        name,
        IF (age >= 18, '成年', '未成年')
    FROM
        if_test;

    返回結果如下。

    +-------+---------+
    | name  | if      |
    +-------+---------+
    | a     |  成年   |
    | c     |  成年   |
    | e     |  成年   |
    | f     |  成年   |
    | d     |  未成年 |
    | b     |  成年   |

COALESCE

  • 描述:返回參數列表中第一個非空表達式的值。

    說明

    當所有表達式為NULL時,結果返回NULL。

  • 示例

    --返回結果:1
    SELECT COALESCE(1,2);
    
    --返回結果:2
    select COALESCE(NULL,2,1);
    
    --返回結果:0
    select COALESCE(NULL,0);

NULLIF

  • 描述:判斷兩個表達式的值是否相等,如果相等,則結果返回NULL,反之返回第一個表達式的值。

  • 示例

    SELECT a,       
          NULLIF('a','a')    
    FROM test;

    返回結果如下。

    a    nullif
    ----+-----------
    1    
    2    
    3    

GREATEST

  • 描述:選擇表達式列表中的最大值。

  • 示例

    SELECT a,       
          GREATEST('a','b','c')    
    FROM test;

    返回結果如下。

    a    greatest
    ----+-----------
    1    c
    2    c
    3    c

LEAST

  • 描述:選擇表達式列表中的最小值。

  • 示例

    SELECT a,       
          LEAST('a','b','c')    
    FROM test;

    返回結果如下。

    a    least
    ----+-----------
    1    a
    2    a
    3    a

相關文檔

PostgreSQL的條件函數的使用方法,詳情請參見條件函數