相关疑难解决方法(0)

JSON搜索laravel雄辩

我将destinations字段存储为json类型mysql

示例列值 ["Goa", "Moonar", "Kochi"]

我想获得匹配的所有行goa作为目的地

但是,此行查询返回所需的结果

SELECT * FROM `packages` 
WHERE JSON_CONTAINS(destinations, '["Goa"]');
Run Code Online (Sandbox Code Playgroud)

但是上述查询的雄辩等价是什么?

Laravel版本5.3

型号名称 :Search

php mysql laravel-5

8
推荐指数
2
解决办法
1万
查看次数

在mysql json中按值删除数组元素

是否可以通过 mysql 的 json 数组中的值(而不是索引)删除元素?例如:

# ['new', 'orange']
update waitinglist SET new = JSON_REMOVE("orange", '$') WHERE id=2;
# now it will be ['new']
Run Code Online (Sandbox Code Playgroud)

如果没有,是否有更好的方法来存储它,以便我可以根据需要删除元素?此外,数组中永远不会有重复项。

mysql mysql-json

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

Laravel的查询构建器JSON选择器`field-> key`导致语法错误

所以,我想notifications通过比较某个ID和data列来查询Laravel中的表.data列是这样的:

{
    "Message": "some message",
    "id": 3
}
Run Code Online (Sandbox Code Playgroud)

现在,我需要选择ID等于3的所有通知.以下是我尝试执行此操作的方法:

DB::table('notifications')->where('data->id', '3')->get();
Run Code Online (Sandbox Code Playgroud)

但是这会引发以下错误:

SQLSTATE [42000]:语法错误或访问冲突:1064 SQL语法中有错误; 检查与您的MariaDB服务器版本对应的手册,以便在'>'$附近使用正确的语法."id"'=?' 在第1行(SQL:select*from notificationswhere data- >'$."id"'= 3)

我在这里失去理智,任何人都可以帮助我吗?

php mysql mariadb laravel laravel-5

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

标签 统计

mysql ×3

laravel-5 ×2

php ×2

laravel ×1

mariadb ×1

mysql-json ×1