运算符不存在:json = json

2024-01-20

当我尝试从表中选择一些记录时

    SELECT * FROM movie_test WHERE tags = ('["dramatic","women", "political"]'::json)

sql代码抛出错误

LINE 1: SELECT * FROM movie_test WHERE tags = ('["dramatic","women",...
                                        ^
HINT:  No operator matches the given name and argument type(s). You might      need to add explicit type casts.

********** 错误 **********

ERROR: operator does not exist: json = json
SQL 状态: 42883
指导建议:No operator matches the given name and argument type(s). You might need to add explicit type casts.
字符:37

我是否错过了什么或者我可以在哪里了解有关此错误的信息。


简而言之 - 使用 JSONB 而不是 JSON 或将 JSON 转换为 JSONB。

您无法比较 json 值。您可以改为比较文本值:

SELECT * 
FROM movie_test 
WHERE tags::text = '["dramatic","women","political"]'

但请注意,JSON 类型的值以给定格式的文本形式存储。因此,比较的结果取决于您是否始终应用相同的格式:

SELECT 
    '["dramatic" ,"women", "political"]'::json::text =  
    '["dramatic","women","political"]'::json::text      -- yields false!
    

在 Postgres 9.4+ 中,您可以使用 JSONB 类型来解决此问题,该类型以分解的二进制格式存储。可以比较这种类型的值:

SELECT 
    '["dramatic" ,"women", "political"]'::jsonb =  
    '["dramatic","women","political"]'::jsonb           -- yields true

所以这个查询更可靠:

SELECT * 
FROM movie_test 
WHERE tags::jsonb = '["dramatic","women","political"]'::jsonb

阅读更多关于JSON 类型 https://www.postgresql.org/docs/current/datatype-json.html.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

运算符不存在:json = json 的相关文章

  • 根据日期顺序排名

    我的数据如下 Heading Date A 2009 02 01 B 2009 02 03 c 2009 02 05 d 2009 02 06 e 2009 02 08 我需要如下排名 Heading Date Rank A 2009 02
  • 由于键更改而尝试插入时外键约束失败

    我有一个 Content 对象 它引用多对多关系中的一组 Tag 对象 作为持久化新内容对象的一部分 我在 PostgreSQL 中查看标签是否已存在 如果存在 则将对其的引用添加到内容对象并尝试保存内容对象 我遇到的问题是 当我这样做时
  • 如何通过子 POJO 的属性过滤复合 ManyToMany POJO?

    我有两个像这样的房间实体 Entity public class Teacher implements Serializable PrimaryKey autoGenerate true public int id ColumnInfo n
  • JDBC插入实数数组

    我试图将一个真实的数组插入到 postgresql 数组中 该表的定义是 String sqlTable CREATE TABLE IF NOT EXISTS ccmBlock sampleId INTEGER block REAL 插入内
  • 内置函数将每个单词的第一个字母大写

    如果 SQL Server 中已存在此类函数 我不想为此创建自定义函数 输入字符串 This is my string to convert预期输出 This Is My String To Convert SET ANSI NULLS O
  • SQL Server 连接其他表中不存在的位置

    Service Asset AssetService Id Name Id Name AssetId ServiceId
  • 使用子查询 select 创建新表

    我试图从子查询选择创建一个新表 但出现以下错误 附近的语法不正确 SELECT INTO foo FROM SELECT DATEPART MONTH a InvoiceDate as CalMonth DATEPART YEAR a In
  • 解析带下划线的 SQL Server 数字文字

    我想知道它为什么有效以及为什么它不返回错误 SELECT 2015 11 Result 11 2015 第二种情况 SELECT 2 1 a a 2 1 检查元数据 SELECT name system type name FROM sys
  • 数字表与递归 CTE 生成一系列数字

    为什么使用数字表比使用递归 CTE 动态生成它们要快得多 在我的机器上 给定一张桌子numbers单列n 主键 包含从1到100000的数字 查询如下 select n from numbers 大约需要 400 毫秒才能完成 使用递归 C
  • 日期语句之间的 JPQL SELECT [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我想将此 SQL 语句转换为等效的 JPQL SELECT FROM events WHERE events date BETWE
  • MYSQL从每个类别中随机选择一条记录

    我有一个数据库Items表看起来像这样 id name category int 有几十万条记录 每个item可以是 7 种不同的之一categories 对应于categories table id category 我想要一个从每个类别
  • mysql自动存储记录创建时间戳

    mysql 有什么方法可以在创建记录时自动将时间戳存储在记录行中 我试图使用时间戳 数据类型 和 current timestamp 作为默认值 但后来意识到每次更新记录时都会更新 我只需要一些可以存储创建时间戳的东西 Thanks Set
  • 解析“流”JSON

    我在浏览器中有一个网格 我想通过 JSON 将数据行发送到网格 但浏览器应该在接收到 JSON 时不断解析它 并在解析时将行添加到网格中 换句话说 在接收到整个 JSON 对象后 不应将行全部添加到网格中 应该在接收到行时将其添加到网格中
  • R:将 JSON 时间格式转换为 POSIX

    我有一个 JSON 字符串 并将其放入数据框中 我能够做到这一点 但我在使用 apply 函数之一将所有时间字符串转换为 POSIX 格式时遇到问题 See here https stackoverflow com questions 90
  • 将 MOXy 设置为 JAXB 提供程序,而在同一包中没有属性文件

    我正在尝试使用 MOXy 作为我的 JAXB 提供程序 以便将内容编组 解组到 XML JSON 中 我创建了 jaxb properties 文件 内容如下 javax xml bind context factory org eclip
  • 使用 Newtonsoft 和 C# 反序列化嵌套 JSON

    我正在尝试解析来自 Rest API 的 Json 响应 我可以获得很好的响应并创建了一些类模型 我正在使用 Newtonsoft 的 Json Net 我的响应中不断收到空值 并且不确定我的模型设置是否正确或缺少某些内容 例如 我想要获取
  • 使用加权行概率从 PostgreSQL 表中选择随机行

    输入示例 SELECT FROM test id percent 1 50 2 35 3 15 3 rows 你会如何编写这样的查询 平均 50 的时间我可以获得 id 1 的行 35 的时间 id 2 的行 15 的时间 id 3 的行
  • 如何通过SQL查询检查是否有JSON函数?

    有SQL 2016 中的 JSON 函数 https learn microsoft com en us sql t sql functions json functions transact sql例如 JSON VALUE JSON Q
  • 创建一个 JSON 对象以在 Spring Boot 测试中发布

    我想编写基本测试来使用 JSON 负载在 users URL 上执行 POST 请求来创建用户 我找不到如何将新对象转换为 JSON 到目前为止有这么多 这显然是错误的 但解释了目的 Test public void createUser
  • 如何部署“SQL Server Express + EF”应用程序

    这是我第一次部署使用 SQL Server Express 数据库的应用程序 我首先使用实体 框架模型来联系数据库 我使用 Install Shield 创建了一个安装向导来安装应用程序 这些是我在目标计算机中安装应用程序所执行的步骤 安装

随机推荐

  • 如何在android中使用摘要式身份验证?

    我正在创建一个 Android 应用程序 通过服务器验证用户名 密码 最初服务器正在实施Basic身份验证 所以我的代码工作正常 但现在服务器已更改为Digest身份验证 所以我的旧代码不起作用 使用时应该做哪些改变Digest验证 我的代
  • 要求(img 路径)不起作用/找不到模块“。”反应js

    您好 我正在尝试使用react js 将一组图像从 this state 映射到图像标签 我遇到错误 找不到模块 这是错误 错误 找不到模块 webpack缺少模块 src components thumbnails js 26 23 24
  • 有没有办法以编程方式创建 Twiml Bin?

    我想要制作一个应用程序 用户可以在其中输入电话号码和消息 然后我可以让 Twilio 向该电话号码发送一条带有合成文本的消息 一个TwiML 代码示例 https www twilio com docs api twiml say我正在使用
  • 在python中求小矩阵

    def getMatrixMinor m i j return row j row j 1 for row in m i m i 1 上面是我在堆栈溢出中找到的代码 以便找到矩阵的逆 但是 我对 python 确实很陌生 任何人都可以解释背
  • iphone sdk中Delegate的使用

    有人可以解释一下委托在 iphone sdk 中到底是如何工作的吗 一个简单的示例如何使用委托以及使用委托的优点是什么 委托模式 http en wikipedia org wiki Delegation pattern在iPhone SD
  • 如何在 python 中与终端交互

    我正在写一个小脚本 该脚本应打开 3 个终端并独立与这些终端交互 我很清楚子流程是做到这一点的最佳方法 到目前为止我所做的 usr bin env python import subprocess term1 subprocess Pope
  • ios7 UINavigationBar 一段时间后停止在状态栏下延伸

    首先 这不是关于导航栏重叠状态栏的问题 与许多其他问题一样 UINavigationBar 我的导航控制器 完全按照我的要求对齐 问题出在我的导航栏自定义背景上 背景图像 或导航栏本身 在状态栏下随机停止扩展 在我的应用程序启动几秒钟后或当
  • 给定 N 个弹珠和 M 个楼层,找到算法来找到弹珠会破裂的最低楼层

    它与这个问题相关 两颗弹珠和一座 100 层的建筑 https stackoverflow com questions 6547 two marbles但它不一样 我们要找出最好的算法来找出最小化找到最低楼层所需的最大下降的策略 这就是我的
  • Angular 2 路由器,错误:无法激活已激活的插座

    我想我根本无法理解 Angular 2 路由 我的应用程序中有这样的结构 const routes Routes path login component LoginViewComponent path main component Mai
  • PyTorch 在 TensorDataset 上进行转换

    我在用着TensorDataset https pytorch org docs stable data html highlight tensordataset从 numpy 数组创建数据集 convert numpy arrays to
  • izpack-maven-plugin 默认情况下不包含本机库

    我已在安装 XML 文件中指定了标准快捷方式生成本机
  • 我应该如何修改我的 Queue 类以允许用户在 F# 中创建未指定类型的空队列?

    我创建了一个不可变的Queue在F 中如下 type Queue lt a gt f a list r a list let check function r gt Queue List rev r f r gt Queue f r mem
  • 如何正确绘制变量

    我尝试查看文档 但没有找到我需要的答案 所以我在这里问 例如 我有 15 只海龟 这个数字可能会有所不同 我需要将它们的变量 例如收入 绘制到一个图中 我知道我可以通过命令绘制 1 个代理的变量 plot revenue of turtle
  • 用 for 循环替换 if 语句 (Java)

    我正在开发一个项目 收到的评论之一是我的 if 语句太长 我同意这一点 但我仍然很困惑如何用建议的 for 循环替换它 它一直让我发疯 该项目是分析句子中的辅音并报告它们是否在其中 这是我使用的代码 该项目已经被标记 所以这更像是一个 我的
  • 序列化类时出现 Stackoverflow 异常

    我有一棵树 想将它们序列化为 xml 这些节点派生自 Nodebase 类 我认为是在此处找到的 该类在序列化时失败 public class NodeBase IEqualityComparer IEnumerable IEnumerab
  • Python/AWS Lambda 函数:如何查看 /tmp 存储?

    Lambda 函数可以访问自己的磁盘空间 tmp目录 我的问题是 我在哪里可以直观地看到 tmp目录 我正在尝试将文件下载到 tmp目录来读取它们 并向其中写入一个新文件 我实际上希望看到我正在处理的文件是否正确存储在 tmp执行期间 谢谢
  • 目前 WPF 最好的空闲时间选择器是什么?

    我正在寻找一个简单的时间选择器WPF 的控件 我找到了这个 http marlongrech wordpress com 2007 11 18 time picker http marlongrech wordpress com 2007
  • Laravel 社交名流的名字和姓氏

    我正在使用 Laravel 的 Socialite 将社交身份验证添加到应用程序中 我可以检索全名 但不能分别检索名字和姓氏 回调发生且社交名流处理后 用户已成功检索 如果我要转储我从中恢复的用户 user this gt social g
  • 为arm64构建OpenSSL FIPS

    我找到了为arm64构建非FIPS openssl的参考 但我需要构建FIPS版本 项目如https github com GotoHack iOS openSSL FIPS https github com GotoHack iOS op
  • 运算符不存在:json = json

    当我尝试从表中选择一些记录时 SELECT FROM movie test WHERE tags dramatic women political json sql代码抛出错误 LINE 1 SELECT FROM movie test W