Well, After some more testing it appears that this has nothing to do with trim. (any non existing nested-value will be pushed aside)
select p.dimensions.budgetLevel as `field1`, lower(p.dimensions.adults) as `field2` from dfs.tmp.`/test/0_0_0.parquet` as p; also returns: +---------+---------+ | field1 | field2 | +---------+---------+ | a | null | +---------+---------+ I just as puzzled though :) Regards, -Stefan On Tue, Jul 21, 2015 at 5:32 PM, Stefán Baxter <[email protected]> wrote: > Hi, > > Here is small trick I think you will like :). > > - With this minimal dataset as /tmp/test.json: > {"dimensions":{"adults":"A"}} > > - Running this: > select lower(p.dimensions.budgetLevel) as `field1`, > lower(p.dimensions.adults) as `field2` from dfs.tmp.`/test.json` as p; > > - To no surprise returns this: > +---------+---------+ > | field1 | field2 | > +---------+---------+ > | null | a | > +---------+---------+ > > Here comes the trick(y) part (hold your breath): > > - With the same data as a Parquet file > CREATE TABLE dfs.tmp.`/test` AS SELECT * FROM dfs.tmp.`/test.json`; > > - The same query: > select lower(p.dimensions.budgetLevel) as `field1`, > lower(p.dimensions.adults) as `field2` from dfs.tmp.`/test/0_0_0.parquet` > as p; > > - Return this: > +---------+---------+ > | field1 | field2 | > +---------+---------+ > | a | null | > +---------+---------+ > > ta ta ! > > Best regards, > -Stefan > > > >
