Skip to content

Commit 64cbf34

Browse files
committed
deps: polars enable list_eval feature for sqlp array_to_string list expressions
1 parent 84db964 commit 64cbf34

File tree

2 files changed

+28
-0
lines changed

2 files changed

+28
-0
lines changed

Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,7 @@ polars = { version = "0.52", features = [
196196
"ipc",
197197
"json",
198198
"lazy",
199+
"list_eval",
199200
"object",
200201
"parquet",
201202
"performant",

tests/test_sqlp.rs

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3995,3 +3995,30 @@ fn sqlp_named_window_references() {
39953995
];
39963996
assert_eq!(got, expected);
39973997
}
3998+
3999+
#[test]
4000+
fn sqlp_array_to_string() {
4001+
let wrk = Workdir::new("sqlp_array_to_string");
4002+
4003+
wrk.create("data.csv", vec![svec!["a", "b"],
4004+
svec!["first", "1"],
4005+
svec!["first", "1"],
4006+
svec!["third", "42"]]);
4007+
4008+
let mut cmd = wrk.command("sqlp");
4009+
cmd.arg("data.csv").arg(
4010+
r#"
4011+
SELECT b, ARRAY_TO_STRING("a",', ') AS a2s,
4012+
FROM (
4013+
SELECT b, ARRAY_AGG(a) AS "a"
4014+
FROM data
4015+
GROUP BY b
4016+
) tbl
4017+
ORDER BY a2s"#
4018+
);
4019+
4020+
wrk.assert_success(&mut cmd);
4021+
let got: Vec<Vec<String>> = wrk.read_stdout(&mut cmd);
4022+
let expected = vec![svec!["string"], svec!["a,b,c"]];
4023+
assert_eq!(got, expected);
4024+
}

0 commit comments

Comments
 (0)