使用Laravel 5.1,如何在迁移中通过查询生成器访问 JSON 键/值对?json_data_column中存储有 JSON 数据,我需要在where()查询生成器表达式中对其进行验证。逻辑是这样的:
DB::transaction(function () {
echo 'Deleting rows where user_id is empty...' . PHP_EOL;
DB::table('payment_methods')->where('json_data_column->user_id', '""')->delete();
});
然而,链接在这里似乎不起作用。事实上,输出是:
[Illuminate\Database\QueryException]
SQLSTATE[42703]: Undefined column: 7 ERROR: column "user_id" does not exist
LINE 1: ... "payment_methods" where "json_data_column"->user_id...
^ (SQL: delete from "payment_me
thods" where "payment_platform_data"->user_id = "")
在这种情况下,是否可以使用上面的逻辑来使用链接?如果没有,我如何访问 JSON 字段?
翻过高山走不出你