sqlalchemy mysql json

本文共有725个字,关键词:

问题:sqlalchemy如何查询mysql的json格式字段数据?

解决:使用json_contains

方法:

一、mysql原生sql语句

select  * from log where data->'$.id' = 142;
select data->'$.id' id,data->'$.name' name from log where data->'$.id' = 142;
或者
select * from log2 where JSON_CONTAINS(data,JSON_OBJECT('id', "142"))
或者
select * from animes where json_contains(weekdays, '3');
# 注意此处3在json字段为数字,但此处必须加引号

二、sqlalchemy的语句

session.query(Story).filter(func.json_contains(Story.section_ids, X) == 1).all()

参考:

https://blog.csdn.net/qq_21187515/article/details/90760337
https://stackoverflow.com/questions/44220206/sqlalchemy-filter-a-json-column-containing-an-array
版权声明:本文为作者原创,如需转载须联系作者本人同意,未经作者本人同意不得擅自转载。
添加新评论
暂无评论