【问题标题】:How to create a cyclic sequence in snowflake data warehouse如何在雪花数据仓库中创建循环序列
【发布时间】:2019-01-17 17:23:04
【问题描述】:

我正在像 Oracle 中的 Snowflake 数据仓库中寻找带有循环的序列。我猜雪花数据仓库没有这个内置的。知道如何实现吗?

【问题讨论】:

    标签: snowflake-cloud-data-platform database-sequence


    【解决方案1】:

    虽然 Snowflake 目前不支持它(请考虑在 Snowflake 社区论坛中提交功能请求),但您可以(大部分)使用 UDF 来模拟它,例如:

    create or replace sequence seq;
    create or replace function cyclic_seq() returns int as 'mod(seq.nextval, 3)';
    create or replace table x(s string, i int default cyclic_seq());
    
    insert into x(s) values('a');
    insert into x(s) values('b');
    insert into x(s) values('c');
    insert into x(s) values('d');
    insert into x(s) values('e');
    insert into x(s) values('f');
    
    select * from x;
    ---+---+
     S | I |
    ---+---+
     a | 1 |
     b | 2 |
     c | 0 |
     d | 1 |
     e | 2 |
     f | 0 |
    ---+---+
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-02-23
      • 2017-09-20
      • 2016-02-09
      • 1970-01-01
      • 2012-12-28
      • 2020-08-10
      • 1970-01-01
      • 2020-09-09
      相关资源
      最近更新 更多