seofilter db表具有名为category\u id的json列。我想查询json列中存在值的位置。不要查询所有的行,得到它们的jsoncol值,然后分解等等,因为服务器负载的原因,我想用更少的查询来完成。例如[{60,59,57}]或[{55,58,60}],所以60两者都存在。
wko9yo5t1#
laravel 5.6.24包括 whereJsonContains() :
whereJsonContains()
DB::table('seofilter')->whereJsonContains('category_id', 60)->get(); DB::table('seofilter')->whereJsonContains('category_id', [60, 61, ...])->get();
ncgqoxb02#
mysql有一组json操作和搜索功能,我相信你会在这里找到你想要的东西,从json开始https://dev.mysql.com/doc/refman/8.0/en/json-search-functions.html#function_json-包含这显然符合你提供的例子。
2条答案
按热度按时间wko9yo5t1#
laravel 5.6.24包括
whereJsonContains()
:ncgqoxb02#
mysql有一组json操作和搜索功能,我相信你会在这里找到你想要的东西,从json开始https://dev.mysql.com/doc/refman/8.0/en/json-search-functions.html#function_json-包含
这显然符合你提供的例子。