簡體   English   中英

Spark SQL 中的序列

[英]Sequence in Spark SQL

我想在火花中創建一個序列最好的方法是什么? (在 Java 中)

像這樣:

CREATE SEQUENCE SEQ_NUM
INCREMENT BY 1
START WITH 1
MINVALUE 1
NOCYCLE
CACHE 10
ORDER;

我認為這就是你想要的

sequence(start, stop, step) - 生成從開始到停止(包括)的元素數組,逐步遞增。 返回元素的類型與參數表達式的類型相同。

支持的類型有:字節、短、整數、長、日期、時間戳。

start 和 stop 表達式必須解析為相同的類型。 如果 start 和 stop 表達式解析為 'date' 或 'timestamp' 類型,則 step 表達式必須解析為 'interval' 或 'year-month interval' 或 'day-time interval' 類型,否則為與開始和停止表達式。

論據:

開始 - 一個表達式。 范圍的開始。 停止 - 一個表達式。 結束范圍(包括)。 step - 可選表達式。 范圍的步驟。 默認情況下,如果 start 小於或等於 stop,則 step 為 1,否則為 -1。 對於時間序列,它分別是 1 天和 -1 天。 如果 start 大於 stop 則 step 必須為負數,反之亦然。 例子:

 SELECT sequence(1, 5); [1,2,3,4,5] SELECT sequence(5, 1); [5,4,3,2,1] SELECT sequence(to_date('2018-01-01'), to_date('2018-03-01'), interval 1 month); [2018-01-01,2018-02-01,2018-03-01] SELECT sequence(to_date('2018-01-01'), to_date('2018-03-01'), interval '0-1' year to month); [2018-01-01,2018-02-01,2018-03-01]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM