У меня есть следующая структура таблицы SQL "Product":
int Id
nvarchar(max) Details
Details содержит JSON строку, имеющую следующую структуру:
{
"Id": "10001",
"Description": "example description",
"Variants": [{
"Title": "ABC / no",
"Price": "10"
}, {
"Title": "ABC / Yes",
"Price": "20",
}, {
"Title": "ABC / Yes",
"Price": "30",
}]
}
Мне нужно написать SQL-запрос, который будет просматривать таблицу и возвращать все варианты с определенным заголовком.
Следующая работа
Получить все строки из таблицы, поле сведений которой содержит определенный заголовок
SELECT * FROM Products
WHERE JSON_VALUE(Details, '$.Description') = 'example description'
Получить все строки из таблицы, где Details.Variants[0].Title равно '{string}'
SELECT * FROM Products
WHERE JSON_VALUE(Details, '$.Variants[0].Title') = 'ABC / no'
Получить все Id из таблицы, где Details.Variants[0].Title равно '{string}'
SELECT JSON_VALUE(Details, '$.Id')
FROM Products
WHERE JSON_VALUE(Details, '$.Variants[0].Title') = 'ABC / no'
Мне нужно получить все варианты из всех строк таблицы продуктов, где заголовок варианта равен '{string}'
Аналогичный пример приведен в этом документация, но я не могу заставить ее работать в моем конкретном случае.
Также есть этот запись стека