arrays - 如何切片 BigQuery 数组 - 选择除最后一项以外的所有项目

标签 arrays google-bigquery

我有一个数组

SELECT [1,2,3]

我想选择除最后一个元素之外的所有元素,所以返回

SELECT [1,2]

我该怎么做?

最佳答案

以下是 BigQuery 标准 SQL

#standardSQL
WITH test AS (
  SELECT [1,2,3] original_array UNION ALL
  SELECT [101,102,103, 104, 105]
)
SELECT original_array,
  ARRAY(
    SELECT * EXCEPT(OFFSET)
    FROM test.original_array WITH OFFSET
    WHERE OFFSET < ARRAY_LENGTH(test.original_array) - 1
  ) new_array
FROM test

结果

Row original_array  new_array    
1   1               1    
    2               2    
    3        
2   101             101  
    102             102  
    103             103  
    104             104  
    105      

关于arrays - 如何切片 BigQuery 数组 - 选择除最后一项以外的所有项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59667675/

相关文章:

javascript - 使用 jQuery 填充对象数组和过滤级联下拉列表

javascript - ajax调用中的数组

google-bigquery - BigQuery 无法将 'null' 解析为字段的 int

firebase - 更改 Firebase/Google 分析收集的默认数据

mysql - 连接表结果 Google BigQuery

ruby-on-rails - rails 4 : undefined method `where' for Array:

python - numpy中的随机单热矩阵

php - 代码点火器 : Database to multidimensional array

mysql - 在 BigQuery 中 UNION ALL 或 CONCATENATE 数据集

google-bigquery - 如何通过Java程序获取Bigquery表的架构?