Skip to content

Latest commit

 

History

History
71 lines (37 loc) · 2.97 KB

20230928_07.md

File metadata and controls

71 lines (37 loc) · 2.97 KB

DuckDB 语法糖: Union by name , 自动补齐空缺字段, append数据

作者

digoal

日期

2023-09-28

标签

PostgreSQL , PolarDB , duckdb , 语法糖


背景

duckdb增加了很多SQL语法糖, 目标是要让用户可以随心所欲的写SQL.

https://duckdb.org/2023/08/23/even-friendlier-sql.html

Union by name , 自动补齐空缺字段, append数据

Simply replace UNION with UNION BY NAME or UNION ALL with UNION ALL BY NAME.

CREATE TABLE proverbs AS  
     SELECT   
          'Revenge is a dish best served cold' AS klingon_proverb   
     UNION ALL BY NAME   
     SELECT   
          'You will be assimilated' AS borg_proverb,  
          'If winning is not important, why keep score?' AS klingon_proverb;  
  
FROM proverbs;  
klingon_proverb borg_proverb
Revenge is a dish best served cold NULL
If winning is not important, why keep score? You will be assimilated

is particularly useful for DuckDB’s multi-file reading capabilities.

https://duckdb.org/docs/data/multiple_files/combining_schemas#union-by-name

digoal's wechat