如何使用SQL检查一个表中存在的json值数组是否存在于另一个表中?

风水

我有两张看起来像这样的桌子..

篮子

身份证 数组
1 ["Apple", "Mango", "Pineapple"]
2 ["Mango", "Pineapple"]
3 ["Dragonfruit"]

库存

水果 计数
苹果 100
芒果 500
猕猴桃 99
葡萄 0

通过 SQL 查询,我必须检查第一个表的数组中有多少水果出现在第二个表中。

例如,out of ["Apple", "Mango", "Pineapple"]onlyAppleMangois 在 Stock 表中。

预期结果:

身份证 可用
1 2
2 1
3 0

附注。这是我试图解决的实际问题的简化,我的主要查询是如何将对象的 JSON 数组与其他表进行匹配。水果/股票示例仅用于解释问题。

他们不是
SELECT Baskets.id, COUNT(Stock.Fruit) available
FROM Baskets 
LEFT JOIN Stock ON JSON_SEARCH(Baskets.Array, 'one', Stock.Fruit) IS NOT NULL
GROUP BY Baskets.id

https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=a0f8e8fba8851fcda508affca0201ba9

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

检查值是否存在于选择查询中的另一个表中

检查一个表中的值组合是否存在于另一个表中

FirebaseRecyclerAdapter 检查 Id 是否存在于另一个表中

如何检查值是否存在于另一个熊猫数据框中?

如果存在于另一个表 sql 中,则标记列的值

angular 5 和 firebase/angularfire,使用键检查键是否存在于另一个表中

SQL-如何根据用户是否存在于另一个表中来选择该用户?

检查数组值是否存在于另一个包含逗号分隔值的数组值中

如何检查一个 json 对象数组中的 id 是否存在于另一个 json 对象嵌套数组中?

蜂巢:如何检查一个数组中的值是否存在于另一个数组中?

检查所有数组值是否存在于另一个数组值中

检查一个数组中的元素是否存在于另一个数组中

检查对象值数组是否存在于另一个数组中,但长度不同

如何在 Oracle 中编写一个简单的查询或 PL/SQL 代码来检查 order_id 是否存在于一个表中,然后再处理另一个表?

选择是否存在于另一个表中,且条件为AND

如何检查对象属性是否也存在于另一个对象中?

如何合并仅存在于另一个表中的列中的数据?

列值必须存在于另一个表的非主列中

选择表中的值,如果它存在于另一个

雪花。如何检查子数组是否存在于另一个数组中?

如何检查结果数组元素是否存在于另一个结果数组中

SQL 只返回存在于另一个表中的 id

如何检查 csv 文件中的值是否存在于另一个文件中

如何检查一个值是否存在于javascript中的数组中?

如果一个表不存在于另一个表中,该如何删除

根据与该行相关的列是否存在于另一个表中来过滤行值

如何检查嵌套对象的值是否已存在于另一个对象中?

如何检查一个元素是否存在于另一个元素在Jquery中?

如何检查一个 XML 元素是否存在于 nodejs 的另一个元素中?