生成列

生成列(Generated Columns)允许你定义列值由其他列或表达式自动计算得出,计算值并存储在表中。语法:

column_name data_type GENERATED ALWAYS AS (expression) STORED

使用要点:

  • Generated column基于其他列, 不能被赋值

  • 表达式不能包含易变的函数和子查询

  • 可以作为索引的一部分,提高查询性能

示例:

CREATE TABLE products (
    product_id INT,
    name TEXT, 
    price NUMERIC,
    tax NUMERIC,
    final_price NUMERIC GENERATED ALWAYS AS (price * (1 + tax)) STORED
);

总之,Generated Columns通过自动计算派生列,简化了SQL操作,是ProtonBase的一项强大特性。

更多使用可以参考Generated Columns