You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
assertThat(QueryUtils.applySorting("select * from user u", sort))
524
525
.isEqualTo("select * from user u order by u.age desc");
526
+
// order by present
525
527
assertThat(QueryUtils.applySorting("select * from user u order by u.lastname", sort))
526
528
.isEqualTo("select * from user u order by u.lastname, u.age desc");
529
+
// partition by
527
530
assertThat(QueryUtils.applySorting("select dense_rank() over (partition by age) from user u", sort))
528
531
.isEqualTo("select dense_rank() over (partition by age) from user u order by u.age desc");
532
+
// order by in over clause
529
533
assertThat(QueryUtils.applySorting("select dense_rank() over (order by lastname) from user u", sort))
530
534
.isEqualTo("select dense_rank() over (order by lastname) from user u order by u.age desc");
535
+
// order by in over clause (additional spaces)
531
536
assertThat(QueryUtils.applySorting("select dense_rank() over ( order by lastname ) from user u", sort))
532
537
.isEqualTo("select dense_rank() over ( order by lastname ) from user u order by u.age desc");
538
+
// order by in over clause + at the end
533
539
assertThat(QueryUtils.applySorting("select dense_rank() over (order by lastname) from user u order by u.lastname", sort))
534
540
.isEqualTo("select dense_rank() over (order by lastname) from user u order by u.lastname, u.age desc");
541
+
// partition by + order by in over clause
535
542
assertThat(QueryUtils.applySorting("select dense_rank() over (partition by active, age order by lastname) from user u", sort))
536
543
.isEqualTo("select dense_rank() over (partition by active, age order by lastname) from user u order by u.age desc");
544
+
// partition by + order by in over clause + order by at the end
537
545
assertThat(QueryUtils.applySorting("select dense_rank() over (partition by active, age order by lastname) from user u order by active", sort))
538
546
.isEqualTo("select dense_rank() over (partition by active, age order by lastname) from user u order by active, u.age desc");
547
+
// partition by + order by in over clause + frame clause
539
548
assertThat(QueryUtils.applySorting("select dense_rank() over ( partition by active, age order by username rows between current row and unbounded following ) from user u", sort))
540
549
.isEqualTo("select dense_rank() over ( partition by active, age order by username rows between current row and unbounded following ) from user u order by u.age desc");
550
+
// partition by + order by in over clause + frame clause + order by at the end
541
551
assertThat(QueryUtils.applySorting("select dense_rank() over ( partition by active, age order by username rows between current row and unbounded following ) from user u order by active", sort))
542
552
.isEqualTo("select dense_rank() over ( partition by active, age order by username rows between current row and unbounded following ) from user u order by active, u.age desc");
553
+
// order by in subselect (select expression)
554
+
assertThat(QueryUtils.applySorting("select lastname, (select i.id from item i order by i.id limit 1) from user u", sort))
555
+
.isEqualTo("select lastname, (select i.id from item i order by i.id limit 1) from user u order by u.age desc");
556
+
// order by in subselect (select expression) + at the end
557
+
assertThat(QueryUtils.applySorting("select lastname, (select i.id from item i order by 1 limit 1) from user u order by active", sort))
558
+
.isEqualTo("select lastname, (select i.id from item i order by 1 limit 1) from user u order by active, u.age desc");
559
+
// order by in subselect (from expression)
560
+
assertThat(QueryUtils.applySorting("select * from (select * from user order by age desc limit 10) u", sort))
561
+
.isEqualTo("select * from (select * from user order by age desc limit 10) u order by age desc");
562
+
// order by in subselect (from expression) + at the end
563
+
assertThat(QueryUtils.applySorting("select * from (select * from user order by 1, 2, 3 desc limit 10) u order by u.active asc", sort))
564
+
.isEqualTo("select * from (select * from user order by 1, 2, 3 desc limit 10) u order by u.active asc, age desc");
0 commit comments