在我的表中有一列包含JSON
编码数据,并且一条记录如下所示
{"late_fee":10,
"due_date":"2019-10-01 00:00:00",
"property_type":"house"
}
从数据库获取数据时,我需要在late_fee
数据列中不存在键JSON
的记录。如何将其置于where
状态?
这是我必须在上面添加条件的代码行:
$payments = Rent::where('property_id', $property['id']);`
编辑
通过您发表的评论,可以确认一下这是正确的方法吗?
$payments = Rent::where('property_id', $property['id'])->whereJsonContains('notification_settings->late_fee', null);
P.S。 notification_settings
是存储JSON
数据的列的名称。
答案 0 :(得分:0)
只需阅读以下简短文章: https://laravel.com/docs/5.7/queries#json-where-clauses
应该可以:
$payments = Rent::where('property_id', $property['id'])->whereJsonContains('notification_settings->late_fee', null);