为了避免使用临时表,我希望将一些数据存储为变量内的json数组,并将其连接起来。数据如下所示:
[
{
"CarID": "9",
"Tank": "11.4",
"Distance": "120",
"From": "Brussels",
"To": "Bruges"
},
{
"CarID": "22",
"Tank": "15.9",
"Distance": "70",
"From": "Eupen",
"To": "Cologne"
}
]
我想在mysql中设置一个变量为该值,并能够执行以下操作:
SELECT
(
Cars.Consumption
* JSON_UNQUOTE(JSON_something('???','$.Distance'))
) - JSON_UNQUOTE(JSON_something('???','$.Tank')) AS neededRefuel
FROM Cars
WHERE JSON_SEARCH(
@myJson,
'one',
CAST(Cars.CarID AS JSON),
NULL,
'$[*].CarID'
) IS NOT NULL
这只是一个简单的例子。显然,在mysql中,作为整数的json值不容易检测,所以我设置了引号。
我想在视图中使用这种过滤器,所以临时表实际上不是一个选项。
使用mysql 8.0.11
1条答案
按热度按时间lsmepo6l1#
我只是谦卑地对待json表,它似乎正是我想要的:)