I am getting error:
The argument 2 of the "JSON_VALUE or JSON_QUERY" must be a string literal
...while trying to pass variable as parameter to JSON_QUERY function. Please help me to resolve it.
DECLARE @cnt INT = 1;
DECLARE @cnt_total INT = 1;
DECLARE @json NVARCHAR(MAX);
DECLARE @json1 NVARCHAR(MAX);
declare @str VARCHAR(200);
WHILE @cnt <= 10
BEGIN
set @str = '$.Seasons[0].Products['+convert(varchar,@cnt)+'].ProductChannels';
set @str = char(39) +@str+ char(39);
PRINT @STR
select @json = json_query(jfile,@STR) from Import.tstjson;
--MORE CODE
SET @cnt = @cnt + 1;
END
Sample data:
{
"Seasons": [
{
"Season": "12321231",
"Products": [
{
"ProductId": "211",
"ProductChannels": [
{
"ChannelId": 1,
"WeekQuantities": []
}
],
"ccc": 3,
"Tttt": 4
}
]
}
]
}