@@ -3570,36 +3570,36 @@ async fn unnest_columns() -> Result<()> {
3570
3570
assert_snapshot ! (
3571
3571
batches_to_sort_string( & results) ,
3572
3572
@r###"
3573
- +----------+------------------------------------------------+--------------------+
3574
- | shape_id | points | tags |
3575
- +----------+------------------------------------------------+--------------------+
3576
- | 1 | [{x: -3, y: -4}, {x: -3, y: 6}, {x: 2, y: -2}] | [tag1] |
3577
- | 2 | | [tag1, tag2] |
3578
- | 3 | [{x: -9, y: 2}, {x: -10, y: -4}] | |
3579
- | 4 | [{x: -3, y: 5}, {x: 2, y: -1}] | [tag1, tag2, tag3] |
3580
- +----------+------------------------------------------------+--------------------+
3581
- "###
3582
- ) ;
3573
+ +----------+---------------------------------+--------------------------+
3574
+ | shape_id | points | tags |
3575
+ +----------+---------------------------------+--------------------------+
3576
+ | 1 | [{x: 5, y: -8}, {x: -3, y: -4}] | [tag1] |
3577
+ | 2 | [{x: 6, y: 2}, {x: -2, y: -8}] | [tag1] |
3578
+ | 3 | [{x: -9, y: -7}, {x: -2, y: 5}] | [tag1, tag2, tag3, tag4] |
3579
+ | 4 | | [tag1, tag2, tag3] |
3580
+ +----------+---------------------------------+--------------------------+
3581
+ "### ) ;
3583
3582
3584
3583
// Unnest tags
3585
3584
let df = table_with_nested_types ( NUM_ROWS ) . await ?;
3586
3585
let results = df. unnest_columns ( & [ "tags" ] ) ?. collect ( ) . await ?;
3587
3586
assert_snapshot ! (
3588
3587
batches_to_sort_string( & results) ,
3589
3588
@r###"
3590
- +----------+------------------------------------------------+------+
3591
- | shape_id | points | tags |
3592
- +----------+------------------------------------------------+------+
3593
- | 1 | [{x: -3, y: -4}, {x: -3, y: 6}, {x: 2, y: -2}] | tag1 |
3594
- | 2 | | tag1 |
3595
- | 2 | | tag2 |
3596
- | 3 | [{x: -9, y: 2}, {x: -10, y: -4}] | |
3597
- | 4 | [{x: -3, y: 5}, {x: 2, y: -1}] | tag1 |
3598
- | 4 | [{x: -3, y: 5}, {x: 2, y: -1}] | tag2 |
3599
- | 4 | [{x: -3, y: 5}, {x: 2, y: -1}] | tag3 |
3600
- +----------+------------------------------------------------+------+
3601
- "###
3602
- ) ;
3589
+ +----------+---------------------------------+------+
3590
+ | shape_id | points | tags |
3591
+ +----------+---------------------------------+------+
3592
+ | 1 | [{x: 5, y: -8}, {x: -3, y: -4}] | tag1 |
3593
+ | 2 | [{x: 6, y: 2}, {x: -2, y: -8}] | tag1 |
3594
+ | 3 | [{x: -9, y: -7}, {x: -2, y: 5}] | tag1 |
3595
+ | 3 | [{x: -9, y: -7}, {x: -2, y: 5}] | tag2 |
3596
+ | 3 | [{x: -9, y: -7}, {x: -2, y: 5}] | tag3 |
3597
+ | 3 | [{x: -9, y: -7}, {x: -2, y: 5}] | tag4 |
3598
+ | 4 | | tag1 |
3599
+ | 4 | | tag2 |
3600
+ | 4 | | tag3 |
3601
+ +----------+---------------------------------+------+
3602
+ "### ) ;
3603
3603
3604
3604
// Test aggregate results for tags.
3605
3605
let df = table_with_nested_types ( NUM_ROWS ) . await ?;
@@ -3612,20 +3612,18 @@ async fn unnest_columns() -> Result<()> {
3612
3612
assert_snapshot ! (
3613
3613
batches_to_sort_string( & results) ,
3614
3614
@r###"
3615
- +----------+-----------------+--------------------+
3616
- | shape_id | points | tags |
3617
- +----------+-----------------+--------------------+
3618
- | 1 | {x: -3, y: -4} | [tag1] |
3619
- | 1 | {x: -3, y: 6} | [tag1] |
3620
- | 1 | {x: 2, y: -2} | [tag1] |
3621
- | 2 | | [tag1, tag2] |
3622
- | 3 | {x: -10, y: -4} | |
3623
- | 3 | {x: -9, y: 2} | |
3624
- | 4 | {x: -3, y: 5} | [tag1, tag2, tag3] |
3625
- | 4 | {x: 2, y: -1} | [tag1, tag2, tag3] |
3626
- +----------+-----------------+--------------------+
3627
- "###
3628
- ) ;
3615
+ +----------+----------------+--------------------------+
3616
+ | shape_id | points | tags |
3617
+ +----------+----------------+--------------------------+
3618
+ | 1 | {x: -3, y: -4} | [tag1] |
3619
+ | 1 | {x: 5, y: -8} | [tag1] |
3620
+ | 2 | {x: -2, y: -8} | [tag1] |
3621
+ | 2 | {x: 6, y: 2} | [tag1] |
3622
+ | 3 | {x: -2, y: 5} | [tag1, tag2, tag3, tag4] |
3623
+ | 3 | {x: -9, y: -7} | [tag1, tag2, tag3, tag4] |
3624
+ | 4 | | [tag1, tag2, tag3] |
3625
+ +----------+----------------+--------------------------+
3626
+ "### ) ;
3629
3627
3630
3628
// Test aggregate results for points.
3631
3629
let df = table_with_nested_types ( NUM_ROWS ) . await ?;
@@ -3642,25 +3640,26 @@ async fn unnest_columns() -> Result<()> {
3642
3640
assert_snapshot ! (
3643
3641
batches_to_sort_string( & results) ,
3644
3642
@r###"
3645
- +----------+-----------------+------+
3646
- | shape_id | points | tags |
3647
- +----------+-----------------+------+
3648
- | 1 | {x: -3, y: -4} | tag1 |
3649
- | 1 | {x: -3, y: 6} | tag1 |
3650
- | 1 | {x: 2, y: -2} | tag1 |
3651
- | 2 | | tag1 |
3652
- | 2 | | tag2 |
3653
- | 3 | {x: -10, y: -4} | |
3654
- | 3 | {x: -9, y: 2} | |
3655
- | 4 | {x: -3, y: 5} | tag1 |
3656
- | 4 | {x: -3, y: 5} | tag2 |
3657
- | 4 | {x: -3, y: 5} | tag3 |
3658
- | 4 | {x: 2, y: -1} | tag1 |
3659
- | 4 | {x: 2, y: -1} | tag2 |
3660
- | 4 | {x: 2, y: -1} | tag3 |
3661
- +----------+-----------------+------+
3662
- "###
3663
- ) ;
3643
+ +----------+----------------+------+
3644
+ | shape_id | points | tags |
3645
+ +----------+----------------+------+
3646
+ | 1 | {x: -3, y: -4} | tag1 |
3647
+ | 1 | {x: 5, y: -8} | tag1 |
3648
+ | 2 | {x: -2, y: -8} | tag1 |
3649
+ | 2 | {x: 6, y: 2} | tag1 |
3650
+ | 3 | {x: -2, y: 5} | tag1 |
3651
+ | 3 | {x: -2, y: 5} | tag2 |
3652
+ | 3 | {x: -2, y: 5} | tag3 |
3653
+ | 3 | {x: -2, y: 5} | tag4 |
3654
+ | 3 | {x: -9, y: -7} | tag1 |
3655
+ | 3 | {x: -9, y: -7} | tag2 |
3656
+ | 3 | {x: -9, y: -7} | tag3 |
3657
+ | 3 | {x: -9, y: -7} | tag4 |
3658
+ | 4 | | tag1 |
3659
+ | 4 | | tag2 |
3660
+ | 4 | | tag3 |
3661
+ +----------+----------------+------+
3662
+ "### ) ;
3664
3663
3665
3664
// Test aggregate results for points and tags.
3666
3665
let df = table_with_nested_types ( NUM_ROWS ) . await ?;
@@ -3994,15 +3993,15 @@ async fn unnest_aggregate_columns() -> Result<()> {
3994
3993
assert_snapshot ! (
3995
3994
batches_to_sort_string( & results) ,
3996
3995
@r###"
3997
- + --------------------+
3998
- | tags |
3999
- + --------------------+
4000
- | |
4001
- | [tag1, tag2, tag3] |
4002
- | [tag1, tag2, tag3] |
4003
- | [tag1, tag2] |
4004
- | [tag1] |
4005
- + --------------------+
3996
+ +------ --------------------+
3997
+ | tags |
3998
+ +------ --------------------+
3999
+ | [tag1, tag2, tag3, tag4] |
4000
+ | [tag1, tag2, tag3] |
4001
+ | [tag1, tag2] |
4002
+ | [tag1] |
4003
+ | [tag1] |
4004
+ +------ --------------------+
4006
4005
"###
4007
4006
) ;
4008
4007
@@ -4018,7 +4017,7 @@ async fn unnest_aggregate_columns() -> Result<()> {
4018
4017
+-------------+
4019
4018
| count(tags) |
4020
4019
+-------------+
4021
- | 9 |
4020
+ | 11 |
4022
4021
+-------------+
4023
4022
"###
4024
4023
) ;
@@ -4267,7 +4266,7 @@ async fn unnest_analyze_metrics() -> Result<()> {
4267
4266
assert_contains ! ( & formatted, "elapsed_compute=" ) ;
4268
4267
assert_contains ! ( & formatted, "input_batches=1" ) ;
4269
4268
assert_contains ! ( & formatted, "input_rows=5" ) ;
4270
- assert_contains ! ( & formatted, "output_rows=10 " ) ;
4269
+ assert_contains ! ( & formatted, "output_rows=11 " ) ;
4271
4270
assert_contains ! ( & formatted, "output_batches=1" ) ;
4272
4271
4273
4272
Ok ( ( ) )
0 commit comments