mysql json存null字符串怎么查?

mysql json存null字符串怎么查?

如图, sport 是 json 字段,要把sport为 null 字符串这一行查出来

无效查询

select * from tb where sport = 'null'
select * from tb where sport is null
SELECT * FROM tb WHERE sport = '"null"'

MySQL5.7 的 json 字符串

能存 json字符串, null字符串, null值, 数字
但是不能存其它 纯字符串

本作品采用《CC 协议》,转载必须注明作者和本文链接
reading
白小二
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 10

用双引号包起来

select * from tb where json_str = '"null"'
3年前 评论
白小二 (楼主) 3年前
Rache1 (作者) 3年前
seaChild

select * from 24ke_work_task where json =json_array() or json is null 如果是json 里面的字段 要这样 json->'$.field' = json_array()

file

3年前 评论
白小二 (楼主) 3年前
select * from tb where JSON_CONTAINS(`sport`, 'null');
select * from tb where JSON_CONTAINS(`sport`, 'null', '$');
3年前 评论

SELECT * FROM tb WHERE JSON_TYPE(sport) = 'NULL'

3年前 评论

select * from tb where JSON_TYPE(sport) is NULL

3年前 评论

select * from tb where JSON_DEPTH(sport) = 1

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!