DolphinDB正在开发这个功能,预计10月底左右可以发布。
回答于 2021-09-03 11:17
在模块文件中,仅允许封装函数定义,其他非函数定义代码将被忽略
回答于 2021-09-03 11:08
有个secondOfMinute得到秒数,比如: select * from tick where secondOfMinute( timestamp) ==5
回答于 2021-09-03 11:07
upsert适合低频更新的场景。它底层实现使用了Copy-on-update机制,即会对相关列先复制一份分区数据,再执行修改替换操作,所以耗时一般会在秒级,若涉及分区数多,耗时会更多。
回答于 2021-09-03 10:00
可以用高阶函数cross(func, X, [Y])以列为单位遍历计算: pcross(ols, X, matrixY) 如果x是向量,可以如下实现: each(ols{,x}, matrixY)
回答于 2021-09-02 14:44
100:500表示100到499行,从100行到最后一行,可以按下面这样写: alphaDDBPanelq[100:m.rows(), ] 还可以用slice函数,效果跟[]等价。
回答于 2021-09-01 16:29
如下所示,nullFill!(t1.time, t2.time)是指若t1.time是空值,就用t2.time的值填充: t1= table(1 2 3 3 6 as time, 1.1 2.1 3.1 3.1 6.1 as value)t2 = table(5 3 1 as time, 5.1 3.1 1.1 as qty)select nullFill(t1.time, t2.time) as time, value, qty from fj(t1, t2, `time) order by nullFill!(t1.time, t2.time)
回答于 2021-08-31 09:31
可以用deltas函数,例如: t=table(1..10 join [12, 14,16] as id) select id from t where deltas(id)>1 上述t表中id从10跳到12,14,16,select语句能把12,14,16查询出来。
回答于 2021-08-30 09:20
在执行tb = loadTable(db_name, tb_name)后就会显示tb的这些信息,但这个仅显示了分区信息,只有双击它才会从磁盘加载具体的分区数据到内存,以方便用户快速查询某个分区的数据。 loadTable仅加载元数据,可以理解为一个表对象,占用很少的内存。然后对它执行SQL查询语句后,才会把涉及到的分区的数据加载到内存。可以用g...
回答于 2021-08-28 09:41
自定义函数如下: def genUuid(x){ return rand(uuid(), x.size())} 但这个方法随机生成的uuid,时间久了,并不能保证唯一。
回答于 2021-08-26 16:18