拉维尔 5.6。 JSONb 列。计数数组

标签 laravel postgresql eloquent jsonb laravel-5.6

我正在使用 PostgreSQL 的 JSONb 列。

我的data列中有这样一个数组

{
    myKey: []
}

我如何通过 Laravel 检查这个数组是否为空?

有点像

MyModel::where('data->myKey'...)

最佳答案

你必须使用原始语句:

MyModel::whereRaw("json_array_length((data->'myKey')::json) > 0")

在 Laravel 5.7.2 中你可以使用 whereJsonLength():

MyModel::whereJsonLength('data->myKey', '>', 0)

关于拉维尔 5.6。 JSONb 列。计数数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50820839/

相关文章:

model - laravel: Eloquent 例子将数据插入数据库

php - 对对象数组使用 $casts

PostgreSQL - 将字符串转换为 ASCII 整数

linux - 什么是 POSTGIS_VERSION 2.1.7+dfsg-3~94.git954a8d0.pgdg80+1?

javascript - JSON 文件提取自 url

laravel - 如何按月返回过去六个月的记录?

r - 如何使用 R 连接到远程 PostgreSQL,需要证书验证

php - Laravel Eloquent - pluck() 角色名称

php - 在 laravel 5.2 中显式插入 `id` 自动增量主键字段

laravel中mysql和mongodb的关系