Actually it is important as you could leverage functions in the querying language of the data source. here is an example in MS SQL
or
;with src
as
(
select '{"foo": "dude"}' as zaza union
select '{"bar": 125, "dude": null}'
)
SELECT *
from src
cross apply OPENJSON(src.zaza) WITH (
foo NVARCHAR(50) '$.foo',
bar INT '$.bar',
dude NVARCHAR(50) '$.dude'
);