語法
CannerFlow SQL Engine (ANSI SQL) 底層基於 Presto 去做優化以及設計,目前 CannerFlow SQL explorer 只支援 Presto 中的 SELECT statement。可以參考 Presto 官網的 SELECT statement 相關資料。
所有操作都為 ANSI SQL compliant 的語法。ANSI SQL 相關介紹可以參考 W3School SQL Tutorial。
SELECT
選擇特定欄位
選擇所有欄位
WHERE
依照條件選擇資料
AND, OR
連接多個條件
Operators
可允許的比較運算符號以及語法
<
小於>
大於<=
小於或是等於>=
大於或是等於=
等於<>
不等於!=
不等於BETWEEN a AND b
介於 a 與 bIN (a, b, c, ...)
為 a, b, c 其中之一IS NULL
判斷是否為Null
Operators for Specified Types
以下是一些常見用法提供你針對不同型別的欄位做搜尋。
UUID
使用
uuid
前綴轉型Timestamp
使用
timestamp
前綴轉型使用
date
前綴轉型搭配
interval
取得其他時間VARCHAR
使用
LIKE
搭配%
去匹配無或是任意字元使用
LIKE
搭配_
,匹配單一字元
ORDER BY
由小至大排序
由大至小排序
NULL
排序在最前
NULL
排序在最後
GROUP BY
依照特定欄位分組
依照特定欄位分組
HAVING
篩選分組過後的資料。
JOIN
依照特定欄位組合兩張表
UNION
合併兩張表
LIMIT, OFFSET
LIMIT number
最多取得幾筆資料OFFSET number
忽略前幾筆資料
取得第 5 筆之後的 10 筆資料