| -- Automatically generated by SQLQueryTestSuite |
| -- !query |
| create or replace temporary view nested as values |
| (1, array(32, 97), array(array(12, 99), array(123, 42), array(1))), |
| (2, array(77, -76), array(array(6, 96, 65), array(-1, -2))), |
| (3, array(12), array(array(17))) |
| as t(x, ys, zs) |
| -- !query schema |
| struct<> |
| -- !query output |
| |
| |
| |
| -- !query |
| select upper(x -> x) as v |
| -- !query schema |
| struct<> |
| -- !query output |
| org.apache.spark.sql.AnalysisException |
| { |
| "errorClass" : "INVALID_LAMBDA_FUNCTION_CALL.NON_HIGHER_ORDER_FUNCTION", |
| "sqlState" : "42K0D", |
| "messageParameters" : { |
| "class" : "org.apache.spark.sql.catalyst.expressions.Upper" |
| }, |
| "queryContext" : [ { |
| "objectType" : "", |
| "objectName" : "", |
| "startIndex" : 8, |
| "stopIndex" : 20, |
| "fragment" : "upper(x -> x)" |
| } ] |
| } |
| |
| |
| -- !query |
| select ceil(x -> x) as v |
| -- !query schema |
| struct<> |
| -- !query output |
| org.apache.spark.sql.AnalysisException |
| { |
| "errorClass" : "INVALID_LAMBDA_FUNCTION_CALL.NON_HIGHER_ORDER_FUNCTION", |
| "sqlState" : "42K0D", |
| "messageParameters" : { |
| "class" : "org.apache.spark.sql.catalyst.expressions.CeilExpressionBuilder$" |
| }, |
| "queryContext" : [ { |
| "objectType" : "", |
| "objectName" : "", |
| "startIndex" : 8, |
| "stopIndex" : 19, |
| "fragment" : "ceil(x -> x)" |
| } ] |
| } |
| |
| |
| -- !query |
| select transform(zs, z -> z) as v from nested |
| -- !query schema |
| struct<v:array<array<int>>> |
| -- !query output |
| [[12,99],[123,42],[1]] |
| [[17]] |
| [[6,96,65],[-1,-2]] |
| |
| |
| -- !query |
| select transform(ys, y -> y * y) as v from nested |
| -- !query schema |
| struct<v:array<int>> |
| -- !query output |
| [1024,9409] |
| [144] |
| [5929,5776] |
| |
| |
| -- !query |
| select transform(ys, (y, i) -> y + i) as v from nested |
| -- !query schema |
| struct<v:array<int>> |
| -- !query output |
| [12] |
| [32,98] |
| [77,-75] |
| |
| |
| -- !query |
| select transform(zs, z -> concat(ys, z)) as v from nested |
| -- !query schema |
| struct<v:array<array<int>>> |
| -- !query output |
| [[12,17]] |
| [[32,97,12,99],[32,97,123,42],[32,97,1]] |
| [[77,-76,6,96,65],[77,-76,-1,-2]] |
| |
| |
| -- !query |
| select transform(ys, 0) as v from nested |
| -- !query schema |
| struct<v:array<int>> |
| -- !query output |
| [0,0] |
| [0,0] |
| [0] |
| |
| |
| -- !query |
| select transform(cast(null as array<int>), x -> x + 1) as v |
| -- !query schema |
| struct<v:array<int>> |
| -- !query output |
| NULL |
| |
| |
| -- !query |
| select filter(ys, y -> y > 30) as v from nested |
| -- !query schema |
| struct<v:array<int>> |
| -- !query output |
| [32,97] |
| [77] |
| [] |
| |
| |
| -- !query |
| select filter(cast(null as array<int>), y -> true) as v |
| -- !query schema |
| struct<v:array<int>> |
| -- !query output |
| NULL |
| |
| |
| -- !query |
| select transform(zs, z -> filter(z, zz -> zz > 50)) as v from nested |
| -- !query schema |
| struct<v:array<array<int>>> |
| -- !query output |
| [[96,65],[]] |
| [[99],[123],[]] |
| [[]] |
| |
| |
| -- !query |
| select aggregate(ys, 0, (y, a) -> y + a + x) as v from nested |
| -- !query schema |
| struct<v:int> |
| -- !query output |
| 131 |
| 15 |
| 5 |
| |
| |
| -- !query |
| select aggregate(ys, (0 as sum, 0 as n), (acc, x) -> (acc.sum + x, acc.n + 1), acc -> acc.sum / acc.n) as v from nested |
| -- !query schema |
| struct<v:double> |
| -- !query output |
| 0.5 |
| 12.0 |
| 64.5 |
| |
| |
| -- !query |
| select transform(zs, z -> aggregate(z, 1, (acc, val) -> acc * val * size(z))) as v from nested |
| -- !query schema |
| struct<v:array<int>> |
| -- !query output |
| [1010880,8] |
| [17] |
| [4752,20664,1] |
| |
| |
| -- !query |
| select aggregate(cast(null as array<int>), 0, (a, y) -> a + y + 1, a -> a + 2) as v |
| -- !query schema |
| struct<v:int> |
| -- !query output |
| NULL |
| |
| |
| -- !query |
| select reduce(ys, 0, (y, a) -> y + a + x) as v from nested |
| -- !query schema |
| struct<v:int> |
| -- !query output |
| 131 |
| 15 |
| 5 |
| |
| |
| -- !query |
| select reduce(ys, (0 as sum, 0 as n), (acc, x) -> (acc.sum + x, acc.n + 1), acc -> acc.sum / acc.n) as v from nested |
| -- !query schema |
| struct<v:double> |
| -- !query output |
| 0.5 |
| 12.0 |
| 64.5 |
| |
| |
| -- !query |
| select transform(zs, z -> reduce(z, 1, (acc, val) -> acc * val * size(z))) as v from nested |
| -- !query schema |
| struct<v:array<int>> |
| -- !query output |
| [1010880,8] |
| [17] |
| [4752,20664,1] |
| |
| |
| -- !query |
| select reduce(cast(null as array<int>), 0, (a, y) -> a + y + 1, a -> a + 2) as v |
| -- !query schema |
| struct<v:int> |
| -- !query output |
| NULL |
| |
| |
| -- !query |
| select exists(ys, y -> y > 30) as v from nested |
| -- !query schema |
| struct<v:boolean> |
| -- !query output |
| false |
| true |
| true |
| |
| |
| -- !query |
| select exists(cast(null as array<int>), y -> y > 30) as v |
| -- !query schema |
| struct<v:boolean> |
| -- !query output |
| NULL |
| |
| |
| -- !query |
| select zip_with(ys, zs, (a, b) -> a + size(b)) as v from nested |
| -- !query schema |
| struct<v:array<int>> |
| -- !query output |
| [13] |
| [34,99,null] |
| [80,-74] |
| |
| |
| -- !query |
| select zip_with(array('a', 'b', 'c'), array('d', 'e', 'f'), (x, y) -> concat(x, y)) as v |
| -- !query schema |
| struct<v:array<string>> |
| -- !query output |
| ["ad","be","cf"] |
| |
| |
| -- !query |
| select zip_with(array('a'), array('d', null, 'f'), (x, y) -> coalesce(x, y)) as v |
| -- !query schema |
| struct<v:array<string>> |
| -- !query output |
| ["a",null,"f"] |
| |
| |
| -- !query |
| create or replace temporary view nested as values |
| (1, map(1, 1, 2, 2, 3, 3)), |
| (2, map(4, 4, 5, 5, 6, 6)) |
| as t(x, ys) |
| -- !query schema |
| struct<> |
| -- !query output |
| |
| |
| |
| -- !query |
| select transform_keys(ys, (k, v) -> k) as v from nested |
| -- !query schema |
| struct<v:map<int,int>> |
| -- !query output |
| {1:1,2:2,3:3} |
| {4:4,5:5,6:6} |
| |
| |
| -- !query |
| select transform_keys(ys, (k, v) -> k + 1) as v from nested |
| -- !query schema |
| struct<v:map<int,int>> |
| -- !query output |
| {2:1,3:2,4:3} |
| {5:4,6:5,7:6} |
| |
| |
| -- !query |
| select transform_keys(ys, (k, v) -> k + v) as v from nested |
| -- !query schema |
| struct<v:map<int,int>> |
| -- !query output |
| {10:5,12:6,8:4} |
| {2:1,4:2,6:3} |
| |
| |
| -- !query |
| select transform_values(ys, (k, v) -> v) as v from nested |
| -- !query schema |
| struct<v:map<int,int>> |
| -- !query output |
| {1:1,2:2,3:3} |
| {4:4,5:5,6:6} |
| |
| |
| -- !query |
| select transform_values(ys, (k, v) -> v + 1) as v from nested |
| -- !query schema |
| struct<v:map<int,int>> |
| -- !query output |
| {1:2,2:3,3:4} |
| {4:5,5:6,6:7} |
| |
| |
| -- !query |
| select transform_values(ys, (k, v) -> k + v) as v from nested |
| -- !query schema |
| struct<v:map<int,int>> |
| -- !query output |
| {1:2,2:4,3:6} |
| {4:8,5:10,6:12} |
| |
| |
| -- !query |
| select transform(ys, all -> all * all) as v from values (array(32, 97)) as t(ys) |
| -- !query schema |
| struct<v:array<int>> |
| -- !query output |
| [1024,9409] |
| |
| |
| -- !query |
| select transform(ys, (all, i) -> all + i) as v from values (array(32, 97)) as t(ys) |
| -- !query schema |
| struct<v:array<int>> |
| -- !query output |
| [32,98] |
| |
| |
| -- !query |
| select aggregate(split('abcdefgh',''), array(array('')), (acc, x) -> array(array(x))) |
| -- !query schema |
| struct<aggregate(split(abcdefgh, , -1), array(array()), lambdafunction(array(array(namedlambdavariable())), namedlambdavariable(), namedlambdavariable()), lambdafunction(namedlambdavariable(), namedlambdavariable())):array<array<string>>> |
| -- !query output |
| [["h"]] |