MySQL,其中 JSON 包含空数组

2024-04-25

如何在 JSON 列中搜索空数组?

假设我有一个config有时 JSON 等于的列{"tier": []}.

WHERE JSON_CONTAINS(config, '', '$.tier') = 1

or

WHERE JSON_CONTAINS_PATH(config, 'one', '$.tier') = NULL

不返回任何结果。 我有什么遗漏的吗?

我专门四处寻找这个问题的答案,但在 SO 或 MySQL 文档上找不到任何内容。


这里有两种方法可以实现,在 MySQL 5.7.24 上测试:

mysql 5.7.24> select config from mytable 
  where json_contains(config, cast('[]' as json), '$.tier');
+--------------+
| config       |
+--------------+
| {"tier": []} |
+--------------+

mysql 5.7.24> select config from mytable 
  where json_contains_path(config, 'one', '$.tier');
+--------------+
| config       |
+--------------+
| {"tier": []} |
+--------------+

我找到了另一个解决方案,它有助于严格检查空数组:

首先,看到我有两行,其中一行有一个非空数组:

mysql 5.7.24> select config from mytable 
  where json_contains(config, json_array(), '$.tier');
+----------------------------------------+
| config                                 |
+----------------------------------------+
| {"tier": []}                           |
| {"tier": [{"name": "BK", "value": 8}]} |
+----------------------------------------+
2 rows in set (0.00 sec)

现在我确保数组的长度为 0,以此来确认它是空的:

mysql 5.7.24> select config from mytable 
  where json_contains(config, json_array(), '$.tier') 
  and json_length(config, '$.tier') = 0; 
+--------------+
| config       |
+--------------+
| {"tier": []} |
+--------------+
1 row in set (0.00 sec)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL,其中 JSON 包含空数组 的相关文章

  • JSON.NET 序列化 JObject,同时忽略 null 属性

    我有一个JObject它被用作template用于调用 RESTful Web 服务 这JObject通过解析器创建 并且由于它用作模板告诉用户端点架构是什么样子 所以我必须找到一种方法来保留所有属性 这就是为什么我将它们的值默认为null
  • 使用准备好的语句设置表名称

    我正在尝试使用准备好的语句来设置表名以从中选择数据 但在执行查询时不断收到错误 错误和示例代码如下所示 Microsoft ODBC Microsoft Access Driver Parameter Pa RaM000 specified
  • Oracle 中的 TO_Char 数字格式模型

    我不完全理解如何使用 to char 函数将数字转换为具有适当格式模型的字符串 实际数字具有以下格式 使用逗号作为小数点分隔符 始终为 5 个小数 整数最多可达 6 可能是无限的 但目前绝不会超过 6 数字可以是正数或负数 数字可以以 0
  • 从另一列计算出的列?

    给出下表 id value 1 6 2 70 有没有办法添加根据同一个表中的另一列自动计算的列 与 VIEW 类似 但属于同一个表的一部分 举个例子 calculated将是一半value Calculated应该会自动更新value变化
  • LINQ Group By 投影成非匿名类型?

    我有以下 LINQ 示例 var colorDistribution from product in ctx Products group product by product Color into productColors select
  • 如何在 WHERE 子句中最佳地使用 COALESCE() ?

    这是我的查询 select coalesce qa2 subject qa subject as question subject qa body select count from viewed items vi where coales
  • 数据源和数据集的区别

    我目前正在开发一个项目 其主要任务是读取存储在 SQL 数据库中的数据并以用户友好的形式显示它们 使用的编程语言是C 我在 Borland C Builder 6 环境中工作 但我认为标题中提出的问题与编程语言或库无关 当从数据库读取数据时
  • SQL 与 LINQ 性能 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • MYSQL中如何获取不带小数的列值

    我的 mysql 表中有两列A and B我正在获取这样的记录 select A B from table 但问题是上面的查询提供了类似这样的值 12 00 3 4 78 9 但我想得到这样的结果 12 3 78 我将使用哪个 MySQL
  • 将数组写入文件的最佳方法? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我想避免写入数据库并使用常量 数组作为 lang 文件等 i e lang array hello gt hello world 并能够从后台编
  • 选择特定值之后的项目

    说这是我的sql SELECT title author ISBN FROM bs books ORDER BY ISBN LIMIT 3 它只是从某个表中选择所有内容 标题 作者等 假设我想选择某个标题后面的所有项目 而不是按字母顺序或其
  • Python,将CSV文件转换为SQL表

    我有一个没有标题的 CSV 文件 并尝试从文件中的某些列创建 SQL 表 我尝试了这里给出的解决方案 使用 Python 将 CSV 文件导入 sqlite3 数据库表 https stackoverflow com questions 2
  • 如何对 MySQL 数据库中的 ENUM 列进行排序?

    I have colorMySQL 表中的列类型为ENUM RED YELLOW MY COLOR BLACK 还有另一个name列的类型是VARCHAR 30 我想按以下顺序获取所有表行 YELLOW首先行 排序依据name RED最后一
  • Sequel Pro / MAMP 在哪里存储本地数据库?

    我通过 Sequel Pro 和 MAMP 在我的计算机上创建了一些数据库 并运行 localhost 来查看它们 但是 我全新安装了 Mac OS Lion 但忘记将数据库备份到 sql 文件 我会定期备份文件 并预装计算机的副本 有谁知
  • MySQL 连接丢失:系统错误:110

    我正在尝试通过专用服务器上的 localhost 连接到 mySQL 服务器 但我不断收到错误 Lost connection to MySQL server at reading initial communication packet
  • 选择返回动态列

    我有两个表 标准和服务产品 一个标准可以有多个服务产品 每个标准可以有不同数量的与其关联的服务产品 我需要做的是编写一个视图 该视图将返回一些常见数据 然后在一行上列出服务产品 例如 Standard Id Description SO 1
  • 我写了一个 SQL 查询但没有运行,为什么? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 当前表 EmployeeID CompanyID EmployeeCode EmployeeName 1001 C001 11919 ABC
  • JSON 和 AJAX 与 jQuery 有什么区别?

    我听说 JSON 会序列化所有数据 这可以防止我在跨浏览器支持等方面遇到客户端问题 我一直在使用 AJAX 和 jQuery 这看起来很简单 但我不确定其中的区别 我读过我也可以使用它来获取数据 ajax url url dataType
  • SQL 连接表

    表一包含 ID Name 1 Mary 2 John 表二包含 ID Color 1 Red 2 Blue 2 Green 2 Black 我想结束的是 ID Name Red Blue Green Black 1 Mary Y Y 2 J
  • 学院/大学数据 API [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在尝试构建一个应用程序 允许用户查找特定大学并查看有关该大学的数据 录取率 SAT 分数 规模等 但

随机推荐

  • Angular 2 - 使用共享服务

    看起来共享服务是解决许多情况的最佳实践 例如组件之间的通信或替换旧的 Angular 1 的 rootscope 概念 我正在尝试创建我的服务 但它不起作用 有什么帮助吗 泰 应用程序组件 ts import Component from
  • 哪里可以下载 Microsoft.Phone.WinJS.2.1?

    我正在尝试使用 WinJS 制作通用 Windows 应用程序 我已经下载了VS2013的最新更新 RC 版本 我已经安装了我能找到的所有 SDK 我还安装了 WinLibJS VSE exe 扩展 有趣的是 VS 更新一直说我没有 当我打
  • 打印时字体颜色发生变化

    我这里有一个非常令人困惑的问题 我有一个动态构建的表 这里可能是一个不重要的事实 但只是让你知道 在网页上 我根据逻辑标准将文本设置为特定颜色 在页面上 看起来很棒 当进行打印预览 和实际打印 时 颜色有很大不同 在我的代码中 颜色是 红色
  • Laravel 通过表名获取模型

    有没有办法通过表名获取模型 例如 我有一个 用户 模型 其表定义为protected table users 现在 我想做的是通过等于 users 的表名获取模型 这个函数更像是相反的Model getTable 我到处搜索但找不到解决方案
  • 使用 BizTalk Web 服务重新发布内部 Web 服务

    我正在尝试使用 BizTalk 在两个 Web 服务之间进行通信 它必须是这样的 Service1获取输入并通过 BizTalk 发送消息Service2 Service2响应该消息 将其转发至 BizTalk 并将其传递至Service1
  • 导出到 Excel 电子表格 (XLSX) 失败

    使用 ASP NET 网页 我将一些数据导出到 Excel 电子表格 XLSX 当我使用 Visual Studio 运行代码时 代码运行良好 它正在导出具有正确数据的 XLSX 文件 但在部署到测试服务器时 相同的代码会失败 它不会抛出任
  • 在 VC9 中编译时不会出现警告级别 4 的警告。为什么人们不认为这是一种编译器缺陷呢?

    我看到一些发布的代码有超出范围的错误 这让我感到好奇 我希望编译器为此代码生成警告 至少在最高级别 pragma warning push 4 int main int x 2 x 2 0 return 0 pragma warning p
  • 如何打印HttpResponse返回的消息?

    我的 Android 手机上有此代码 URI uri new URI url HttpPost post new HttpPost uri HttpClient client new DefaultHttpClient HttpRespon
  • 自定义rightBarButtonItem消失

    我在导航栏中有一个自定义 rightBarButtomItem 的奇怪错误 我有一个 TabBar 应用程序 如果应用程序已加载 按钮将显示正确 如果我单击选项卡 按钮将继续显示 如果我返回到已显示的选项卡之一 该按钮就会消失 最后 该按钮
  • 使用 python 从 HDFS 获取文件名列表

    这里是 Hadoop 菜鸟 我搜索了一些有关 hadoop 和 python 入门的教程 但没有取得太大成功 我还不需要使用映射器和缩减器进行任何工作 但这更多是一个访问问题 作为Hadoop集群的一部分 HDFS 上有一堆 dat 文件
  • 如何使用jquery打开选择输入

    所以我可以看到选择元素的选项 但我需要单击它 如果我想使用一个函数怎么办 当发生某些事情时 应该选择此选择元素 这意味着列表已打开并且我可以看到选项 我不希望用户单击选择元素 我想要其他东西来打开它 我尝试过的 select select
  • PHP readdir 和排序

    我正在做一个小画廊 我想从目录中读取文件名 并在删除一些前导数字和文件扩展名后打印下面的文件名 我有两个版本的代码 版本 1 不排序 current dir DOCUMENT ROOT weddings2 dir opendir curre
  • Android可扩展列表视图片段

    我正在寻找具有可扩展列表视图的片段 搜索后我发现了一个实现可扩展列表视图片段的类https gist github com 1316903 https gist github com 1316903 但我不知道如何使用它 请帮我 我尝试了列
  • MFMailComposeViewController、Swift 4、Xcode 9

    我的 MFMailComposeViewControllerDelegate 函数有问题 func mailComposeController controller MFMailComposeViewController didFinish
  • 仅根据邮政编码在 R 中绘制热图

    我想在 R 中绘制热图 但我的数据文件是这样的 Lat Long Zip Zvalue 我基本上需要在纬度和经度值之间进行插值 并根据 z 值绘制颜色 我怎样才能在 R 中做到这一点 我最终想要得到这样的东西 套餐spatstat是你的朋友
  • 使用 HelpProvider 类显示帮助,UI 始终位于帮助窗口后面

    我有一个使用 HelpProvider 类的 C Winforms 应用程序 每当我按 F1 调出帮助时 帮助窗口将始终位于我的应用程序顶部 我无法将我的应用程序 UI 带到前台 我仍然可以与我的 UI 交互 但帮助窗口将保留在顶部 这是
  • NetworkX:翻转图

    有没有办法以相反的顺序生成图形 即我想生成垂直翻转的图形 或者如果我可以在绘制之前用一些 matplotlib 子例程翻转它 F e 我希望 357 和 358 位于顶部 1 6 位于底部 只需交换您的位置坐标即可 import netwo
  • Flexbox 不包裹弹性项目

    我正在尝试使用 Flexbox 为我的网站设置布局 inb4 我不关心IE 但由于某种原因 这些物品没有包装 http jsfiddle net EnUuA http jsfiddle net EnUuA section display w
  • 如何将 lib 中的 jar 包含到 Netbeans 中的项目 jar 文件中?

    我正在使用一些 apache HttpClient jar 所以我将它们放在项目的 lib 目录中 当 Netbeans 编译项目时 它会复制 lib 并生成项目 jar 到 dist 目录中 但是当我使用 webstart 运行项目时 我
  • MySQL,其中 JSON 包含空数组

    如何在 JSON 列中搜索空数组 假设我有一个config有时 JSON 等于的列 tier WHERE JSON CONTAINS config tier 1 or WHERE JSON CONTAINS PATH config one