Seofilter db表的json列名为category_ids。我想查询哪里有价值 存在于json col。
并没有查询所有行并获得他们的jsoncol值然后爆炸等,我想用服务器负载来减少对服务器的查询。
例如[{60,59,57}]或[{55,58,60}]所以60都存在。
答案 0 :(得分:1)
Laravel 5.6.24包括whereJsonContains()
:
DB::table('seofilter')->whereJsonContains('category_id', 60)->get();
DB::table('seofilter')->whereJsonContains('category_id', [60, 61, ...])->get();
答案 1 :(得分:0)
MySQL有一组JSON操作和搜索功能我相信你会在这里找到你想要的东西从JSON_CONTAINS开始
https://dev.mysql.com/doc/refman/8.0/en/json-search-functions.html#function_json-contains
这显然符合你提供的例子。