我想获取包含JSON数据字段中的字符串的数据

时间:2019-09-01 08:55:20

标签: json laravel

我有一个包含json字段的帖子表 我想获取所有包含json数组中的字符串的帖子 例如,在标签字段中显示所有包含约翰的帖子 laravel

post: [
         +"id": 1,
         +"user_id": 1,
         +"category_id": 1,
         +"title": "post",
         +"description": "post descr",
         +"tags": "{"tags": ["John", "Anna", "Peter"]}",
         +"created_at": null,
         +"updated_at": null,
     ],

2 个答案:

答案 0 :(得分:0)

可用于查询json字段的常规位置:

$posts = Post::whereJsonContains('tags->tags', 'John')->get();

签出文档:https://laravel.com/docs/5.8/queries#json-where-clauses

答案 1 :(得分:0)

您可以做类似

的操作

Post :: whereRaw('JSON_CONTAINS(tags-> tags,'John')')-> get();