Re: jsonb, LATERAL and DISTINCT query with sequel

2019-05-24 Thread xura
Thanks Jeremy. It works! On Friday, May 24, 2019 at 5:28:28 PM UTC+3, Jeremy Evans wrote: > > On Friday, May 24, 2019 at 6:22:53 AM UTC-7, xura wrote: >> >> In fact, query is now like this: >> >> SELECT DISTINCT ON (jj->>'email') jj->>'email', jj->>'name' , count(*) >> over(partition by

Re: jsonb, LATERAL and DISTINCT query with sequel

2019-05-24 Thread Jeremy Evans
On Friday, May 24, 2019 at 6:22:53 AM UTC-7, xura wrote: > > In fact, query is now like this: > > SELECT DISTINCT ON (jj->>'email') jj->>'email', jj->>'name' , count(*) > over(partition by jj->>'email' ) > from emails > join lateral jsonb_array_elements(send_to) j(jj) on true > ORDER BY

Re: jsonb, LATERAL and DISTINCT query with sequel

2019-05-24 Thread xura
In fact, query is now like this: SELECT DISTINCT ON (jj->>'email') jj->>'email', jj->>'name' , count(*) over(partition by jj->>'email' ) from emails join lateral jsonb_array_elements(send_to) j(jj) on true ORDER BY jj->>'email', id desc On Friday, May 24, 2019 at 12:55:01 PM UTC+3, xura

Re: jsonb, LATERAL and DISTINCT query with sequel

2019-05-24 Thread xura
I've achieved similar query by this: .select(to.get_text('email').as(:email), to.get_text('name').as(:name)) .cross_join(Sequel.function(:jsonb_array_elements, :receiver).lateral) .order(Sequel.desc(to.get_text('email')), Sequel.desc(:id)) .distinct(to.get_text('email')) However, i couldn't

jsonb, LATERAL and DISTINCT query with sequel

2019-05-24 Thread genc
Hi, Is it possible to write this query with Sequel? SELECT DISTINCT ON (x.e->>'email') x.e->>'email' as email, x.e->>'name' as name FROM messages sr CROSS JOIN LATERAL jsonb_array_elements(sr.receiver) x (e) ORDER BY x.e->>'email', id desc Or I use

jsonb, LATERAL and DISTINCT query with sequel

2019-05-24 Thread xura
Hi, Is it possible to write this query with Sequel? SELECT DISTINCT ON (x.e->>'email') x.e->>'email' as email, x.e->>'name' as name FROM messages sr CROSS JOIN LATERAL jsonb_array_elements(sr.receiver) x (e) ORDER BY x.e->>'email', id desc Or I use