S02043
错误代码
S02043
报错信息
The 'asis' keyword is not supported without a PIVOT BY clause. Please include a valid PIVOT BY clause in your query. RefId:S02043
错误原因
若 SELECT 子句使用 ASIS 函数,则必须结合 PIVOT BY,表示保留 PIVOT BY 结果中的重复数据。以下示例使用了 ASIS,但未使用 PIVOT BY,导致错误:
sym = symbol(`C`IBM`C`IBM)
price= 49.6 10 29.46 29.52
qty = 2200 100 1900 2100
timestamp = [09:34:07,09:34:07,09:35:42,09:35:42]
t = table(timestamp, sym, qty, price)
dbName = "dfs://asisTest"
if(existsDatabase(dbName)){
dropDatabase(dbName)
}
db=database(dbName, VALUE, distinct(sym),,`TSDB)
pt = createPartitionedTable(db, t, `pt,`sym,,`sym).append!(t)
select asis(price) from pt context by timestamp, sym
解决办法
检查 SELECT 查询中是否存在使用了 ASIS 函数,但未使用 PIVOT BY 的情况。