小编Chi*_*Adi的帖子

Laravel 5.2在列上为JSON构建查询

我正在使用MySql 5.7.14和laravel 5.2.
我的表'用户'JSON看起来像这样:

[{
    "id": "1",
    "options": "{\"religion\": \"R'hllor, the Lord of Light\", \"favorite_color\": \"red\"}"
}]

当我通过laravel查询时:

$ii =\DB::table('user')->where('options->favorite_color', 'red')->get();
Run Code Online (Sandbox Code Playgroud)

我面临着错误

SQLSTATE[HY000]: General error: 2036 (SQL: select * from `user` where `options`->"$.favorite_color" = red)
Run Code Online (Sandbox Code Playgroud)

当我运行相同的查询时

SELECT * FROM `user` WHERE options->"$.favorite_color"='red'
Run Code Online (Sandbox Code Playgroud)

在phpmyadmin它没有给出任何错误它工作正常.谁能告诉我可能是什么问题?提前致谢.

php mysql orm laravel-5.2

1
推荐指数
1
解决办法
1036
查看次数

标签 统计

laravel-5.2 ×1

mysql ×1

orm ×1

php ×1