S02004

错误代码

S02004

报错信息

No partition returned by the sql object. RefId:S02004

错误原因

loadTableBySQL 函数中参数 sql 生成的数据源为空。例如:

n = 1000
t = table(rand('A'..'Z', n) as sym, 2000.01.01+rand(365, n) as date)

if (existsDatabase("dfs://tradeDB")) {
    dropDatabase("dfs://tradeDB")
}

db = database("dfs://tradeDB", VALUE, 'A'..'Z')
trades = db.createPartitionedTable(t,`trades,`sym).append!(t)

sample = select * from loadTableBySQL(<select * from trades where sym > 'Z'>)

解决办法

调用 loadTableBySQL 函数时,需要确保由参数 sql 生成的数据源的分区数不为0。