flink 1.10.1 sql limit 不生效

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

flink 1.10.1 sql limit 不生效

Peihui He
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.
Reply | Threaded
Open this post in threaded view
|

Re: flink 1.10.1 sql limit 不生效

Peihui He
应该是我这边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.
>
Reply | Threaded
Open this post in threaded view
|

Re: flink 1.10.1 sql limit 不生效

Benchao Li-2
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
Reply | Threaded
Open this post in threaded view
|

Re: flink 1.10.1 sql limit 不生效

Peihui He
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
>
Reply | Threaded
Open this post in threaded view
|

Re: flink 1.10.1 sql limit 不生效

Peihui He
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
>
Reply | Threaded
Open this post in threaded view
|

Re: flink 1.10.1 sql limit 不生效

Peihui He


order by 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
Reply | Threaded
Open this post in threaded view
|

Re: flink 1.10.1 sql limit 不生效

Benchao Li-2
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