【发布时间】:2019-10-09 16:11:03
【问题描述】:
我试图找出一种方法来查找给定 JSON_ARRAY 字符串的元素。我想要实现的是contains all 功能。
假设我有一个名为Movies 的表,其中包含name 和genre 列,还有一个名为Genre 的表,其中包含id 列。
电影
NAME GENRE
Batman 1
Batman 2
Aquaman 2
Joker 3
IT 4
类型
ID NAME
1 Drama
2 Action
3 Thriller
4 Horror
所以现在如果我有一个带有
的 JSON_ARRAYSET @array = JSON_ARRAY("Action", "Drama");
如何创建一个给定 JSON_ARRAY 返回Batman 的存储过程?
我认为解决方案是 SQL 递归,但我不确定...
SET @array = JSON_ARRAY("Action", "Drama");
sproc.GetMovieGivenGenres(@array, @out_movie);
SELECT @out_movie; --> Batman
【问题讨论】:
-
注意!电影的类型完全是虚构的!他们可能不正确;)
-
JSON 数组从何而来?
标签: mysql sql recursive-query