不支持 OmniScidb 表达式节点

OmniScidb Expression Node is not supported

我正在尝试使用基于 GPU 的数据库 OmniScidb。我相信它的 sql 命令应该与 MySQL 相同。我的命令如下


SELECT rdate as rdate
      ,stime / 100 as Stime
      , ttime /100 as etime 
    ,c as endreturn 
      , up.steps as urange
      ,down.steps as drange 
      , Uptime.MinTime as utime 
      , Downtime.MinTime as dtime 
      /*, IFNULL(Uptime.MinTime, 2555) as utime 
      ,IFNULL(Downtime.MinTime, 2555) as dtime */

FROM HL as A

CROSS JOIN(VALUES(0.001),   (0.00125),  (0.0015),   (0.00175),  (0.002),    (0.00225),  (0.0025),   (0.00275),  (0.003),    (0.00325),  (0.0035),   (0.00375),  (0.004),    (0.00425),  (0.0045),   (0.00475),  (0.005),    (0.00525),  (0.0055),   (0.00575),  (0.006),    (0.00625),  (0.0065),   (0.00675),  (0.007),    (0.00725),  (0.0075),   (0.00775),  (0.008),    (0.00825),  (0.0085),   (0.00875),  (0.009),    (0.00925),  (0.0095),   (0.00975),  (0.01), (0.01025),  (0.0105),   (0.01075),  (0.011)) AS up(steps)
CROSS JOIN(VALUES (-0.001), (-0.00125), (-0.0015),  (-0.00175), (-0.002),   (-0.00225), (-0.0025),  (-0.00275), (-0.003),   (-0.00325), (-0.0035),  (-0.00375), (-0.004),   (-0.00425), (-0.0045),  (-0.00475), (-0.005),   (-0.00525), (-0.0055),  (-0.00575), (-0.006),   (-0.00625), (-0.0065),  (-0.00675), (-0.007),   (-0.00725), (-0.0075),  (-0.00775), (-0.008),   (-0.00825), (-0.0085),  (-0.00875), (-0.009),   (-0.00925), (-0.0095),  (-0.00975), (-0.01),    (-0.01025), (-0.0105),  (-0.01075), (-0.011)) AS  down(steps)  

OUTER APPLY (SELECT MIN(ttime) /100 AS MinTime FROM HL as B WHERE B.rdate = A.rdate AND B.ttime > A.stime AND b.ttime <= A.ttime AND H > up.steps ) as Uptime
OUTER APPLY (SELECT MIN(ttime) /100 AS MinTime FROM HL as C WHERE C.rdate = A.rdate AND C.ttime > A.stime AND C.ttime <= A.ttime AND H > up.steps ) as Downtime
 
 WHERE rdate / 10000 = 2011;

但是,returns

Expression node {"field":"rdate","expr":{"correl":"$cor0","type":[{"type":"INTEGER","nullable":true,"name":"rdate"},{"type":"INTEGER","nullable":true,"name":"Stime"},{"type":"INTEGER","nullable":true,"name":"ttime"},{"type":"FLOAT","nullable":true,"name":"h"},{"type":"FLOAT","nullable":true,"name":"L"},{"type":"FLOAT","nullable":true,"name":"C"},{"type":"BIGINT","nullable":false,"name":"rowid"},{"type":"DECIMAL","nullable":false,"precision":6,"scale":5,"name":"steps"},{"type":"DECIMAL","nullable":false,"precision":6,"scale":5,"name":"steps0"},{"type":"INTEGER","nullable":true,"name":"MinTime"},{"type":"INTEGER","nullable":true,"name":"MinTime0"}]}} not supported

我该如何解决?

通过将 allow-loop-joins 标志设置为 true 解决了问题

https://docs.mapd.com/latest/5_dml.html