Hi all,
用zeppelin执行sql的时候发现用了 LEFT JOIN LATERAL TABLE 时候 limit 不生效 sql 类似下面: select a, b, c, t from tb LEFT JOIN LATERAL TABLE (Tf(a)) as T(c, d, e) ON TRUE order by t desc limit 10 如果select 结果中不包括c的化,就正常了 请问这个是什么问题呢?sql是写的不对么? Best Wishes. |
应该是我这边sql问题,我这边在看看,打扰大家了
Peihui He <[hidden email]> 于2020年8月12日周三 下午3:03写道: > Hi all, > > 用zeppelin执行sql的时候发现用了 LEFT JOIN LATERAL TABLE 时候 limit 不生效 > sql 类似下面: > select a, b, c, t from tb LEFT JOIN LATERAL TABLE (Tf(a)) as T(c, d, e) > ON TRUE order by t desc limit 10 > > 如果select 结果中不包括c的化,就正常了 > > 请问这个是什么问题呢?sql是写的不对么? > > Best Wishes. > |
In reply to this post by Peihui He
你这个SQL是在流式还是批式模式下执行的呢?limit不生效的表现是什么呢?
Peihui He <[hidden email]> 于2020年8月12日周三 下午3:03写道: > Hi all, > > 用zeppelin执行sql的时候发现用了 LEFT JOIN LATERAL TABLE 时候 limit 不生效 > sql 类似下面: > select a, b, c, t from tb LEFT JOIN LATERAL TABLE (Tf(a)) as T(c, d, e) ON > TRUE order by t desc limit 10 > > 如果select 结果中不包括c的化,就正常了 > > 请问这个是什么问题呢?sql是写的不对么? > > Best Wishes. > -- Best, Benchao Li |
Hi BenChao
发现问题了,是因为select 的字段中包含了array<Row>,导致数据显示的比实际limit数据要多 Best Wishes. Benchao Li <[hidden email]> 于2020年8月12日周三 下午3:12写道: > 你这个SQL是在流式还是批式模式下执行的呢?limit不生效的表现是什么呢? > > Peihui He <[hidden email]> 于2020年8月12日周三 下午3:03写道: > > > Hi all, > > > > 用zeppelin执行sql的时候发现用了 LEFT JOIN LATERAL TABLE 时候 limit 不生效 > > sql 类似下面: > > select a, b, c, t from tb LEFT JOIN LATERAL TABLE (Tf(a)) as T(c, d, e) > ON > > TRUE order by t desc limit 10 > > > > 如果select 结果中不包括c的化,就正常了 > > > > 请问这个是什么问题呢?sql是写的不对么? > > > > Best Wishes. > > > > > -- > > Best, > Benchao Li > |
In reply to this post by Benchao Li-2
Hi BenChao
SQL是流模式下执行的,看着不生效的表现就是显示的数量超过limit的数量。 order by TUMBLE_START desc 好像不是预期的结果 这个是需要给 TUMBLE_START 得到的timestamp 转为 long么? Best Wishes. Benchao Li <[hidden email]> 于2020年8月12日周三 下午3:12写道: > 你这个SQL是在流式还是批式模式下执行的呢?limit不生效的表现是什么呢? > > Peihui He <[hidden email]> 于2020年8月12日周三 下午3:03写道: > > > Hi all, > > > > 用zeppelin执行sql的时候发现用了 LEFT JOIN LATERAL TABLE 时候 limit 不生效 > > sql 类似下面: > > select a, b, c, t from tb LEFT JOIN LATERAL TABLE (Tf(a)) as T(c, d, e) > ON > > TRUE order by t desc limit 10 > > > > 如果select 结果中不包括c的化,就正常了 > > > > 请问这个是什么问题呢?sql是写的不对么? > > > > Best Wishes. > > > > > -- > > Best, > Benchao Li > |
order by TUMBLE_START 结果如上图 Peihui He <[hidden email]> 于2020年8月12日周三 下午3:40写道:
|
In reply to this post by Peihui He
我有点迷惑了😂
1. 所以你现在的问题得到了解决了么? 2. 我看你最开始写的那个SQL里面并没有window呀,为啥后面又说用到了TUMBLE_START? Peihui He <[hidden email]> 于2020年8月12日周三 下午3:40写道: > Hi BenChao > > SQL是流模式下执行的,看着不生效的表现就是显示的数量超过limit的数量。 > order by TUMBLE_START desc 好像不是预期的结果 > > 这个是需要给 TUMBLE_START 得到的timestamp 转为 long么? > > Best Wishes. > > Benchao Li <[hidden email]> 于2020年8月12日周三 下午3:12写道: > > > 你这个SQL是在流式还是批式模式下执行的呢?limit不生效的表现是什么呢? > > > > Peihui He <[hidden email]> 于2020年8月12日周三 下午3:03写道: > > > > > Hi all, > > > > > > 用zeppelin执行sql的时候发现用了 LEFT JOIN LATERAL TABLE 时候 limit 不生效 > > > sql 类似下面: > > > select a, b, c, t from tb LEFT JOIN LATERAL TABLE (Tf(a)) as T(c, d, > e) > > ON > > > TRUE order by t desc limit 10 > > > > > > 如果select 结果中不包括c的化,就正常了 > > > > > > 请问这个是什么问题呢?sql是写的不对么? > > > > > > Best Wishes. > > > > > > > > > -- > > > > Best, > > Benchao Li > > > -- Best, Benchao Li |
Free forum by Nabble | Edit this page |