我有一个表,其中一列duration
包含整数值,我正在尝试使用 sql 查询构建另一列,该列将包含一个介于 1 和duration
列中的值之间的整数列表。
例如:
duration | range
3 | [1, 2, 3]
3 | [1, 2, 3]
2 | [1, 2]
1 | [1]
...
我在 JS 中找到了一个潜在的解决方案。
create or replace function list_range(DURATION double)
returns VARCHAR
language javascript
strict
as 'return [...Array(DURATION).keys()];';
SELECT
t.*,
list_range(t.duration) as range
FROM table t
你觉得这个解决方案怎么样?可以优化吗?