首页 > 数据库 >PostgreSQL 不支持 union 查询 json

PostgreSQL 不支持 union 查询 json

时间:2023-10-22 16:14:36浏览次数:36  
标签:PostgreSQL jsonb union json 使用 解析

当在使用PostgreSQL数据库查询数据的时候,因为查询出来的列中包含格式为json的字段
进行union报错了,该操作不支持json类型,使用union all也是同样错误
最后查阅资料得出,需要转换为jsonb才行,需要使用函数to_jsonb(你的json字段),之后,unionunion all就都可以了

json 与 jsonb

PostgreSQL支持两种json数据类型:json和jsonb,而两者唯一的区别在于效率。
json是输入的完整拷贝,使用时再去解析,所以它会保留输入的空格,重复键以及顺序等
jsonb是输入解析为二进制保存,它在解析时会删除不必要的空格和重复的键,顺序可能不同,但使用时不用再次解析。

相同点

两者对重复键的处理都是保留最后一个键值对。

不同点

效率的差别:
json类型存储快,使用慢。
jsonb类型存储稍慢,使用较快。

注意:键值对的键必须使用双引号

标签:PostgreSQL,jsonb,union,json,使用,解析
From: https://www.cnblogs.com/lqqgis/p/17780564.html

相关文章

  • oracle使用dblink连接postgresql
    环境:oracle    数据库:192.168.22.201端口号6666操作系统:RHEL7.6postgresql数据库:192.168.22.20  端口号5432操作系统:RHEL7.6pg数据库配置1、修改pg_hba.conf文件hostalllanmc192.168.22.201/24md52、重新加载服务systemctlreloadpostgresql-15.serviceo......
  • Python-Json异常:Object of type Decimal is not JSON serializable
    源起:使用python分离出一串文本,因为是看起来像整数,结果json转换时发生异常:TypeError:ObjectoftypeDecimalisnotJSONserializablemsgInfo={"uid":3232324232}json.dumps(msgInfo,ensure_ascii=False)原因:decimal格式不能被json.dumps正确处理。json.dumps函数发现字......
  • Postgresql数据库之Python连接数据库&查询练习
    Task1.基于finalshell建立的SSH隧道,实现Python代码连接天翼云数据库(1)给出finalshell的配置如下图:为了登录安全起见,将ssh登录端口和数据库监听端口进行了修改。(2)给出Python连接天翼云数据库的代码Python代码如下:importpsycopg2conn=psycopg2.connect(dbname='a2513210112',......
  • 在Postgresql中,为表中的所有点提供100m缓冲区,其中有50M个条目
    我有一个表,有50米的纬度和经度条目,geom是我从QGIS导入时创建的。我试图通过调用jupyter笔记本中的表来为表中的所有点创建一个100m的缓冲区。我还尝试使用SRID:25832转换坐标系,以米为单位表示缓冲区,但在postgresql视图中看不到投影到正确位置的点。SELECT*FROMpublic."opera......
  • PgSql - PostGIS 在 PostgreSQL 中使用
    首先来介绍一下PostGIS是什么?PostGIS是PostgreSQL对象关系数据库的一个空间数据库扩展。它增加了对地理对象的支持,允许在SQL中运行位置查询。官方介绍:PostGIS:SpatialandGeographicobjectsforPostgreSQLPostGISisaspatialdatabaseextenderforPostgreSQLobject......
  • json序列化数据超出最大值(maxJsonLength)
    https://www.cnblogs.com/ellafive/p/13704301.html 1、序列化:以下代码在对象过大时会报错:进行序列化或反序列化时出错。字符串的长度超过了为maxJsonLength属性设置的值。//jsonObj比较大的时候会报错varserializer=newJavaScriptSerializer();returnserializer.Ser......
  • The JSON value of length n is too large and not supported
    https://github.com/dotnet/runtime/issues/39953 I'mreferringtothisissue #30746 thatwasclosedwithlimitof125MBstayingfixedopposedtobeingconfigurable.Itwasarguedthattherewouldbenocommoncaseshittingthe125MBlimit.Suchcases......
  • 使用.Net6中的System.Text.Json遇到几个常见问题及解决方案
    前言以前.NetCore是不内置JSON库的,所以大家都用Newtonsoft的JSON库,而且也确实挺好用的,不过既然官方出了标准库,那更方便更值得我们多用用,至少不用每次都nuget安装Newtonsoft.Json库了。不过日常开发使用中会有一些问题,本文记录一下解决方法,欢迎交流~字符编码问题默认的 System......
  • thinkPHP5.0返回的接口返回 json数据,用了json_encode不生效,却返回的却是text/html格
    如何让返回的数据完全是json1、用SoapUI来测试借口,Content-Type不是json,而是text/html;2、自己的接口,最后的数据用了json_encode,也是不管用的;3、用header来设置Content-Type也没有效果;4、而改框架的配置default_return_type为json,这也是不可取的,整站是网站需要返回的还是te......
  • MySql Json字段部分查询语法
    模糊匹配jsonObject字段select*fromtableNamewherecolumnName->'$.xx'like'%xx%'精确匹配jsonObject类型字段select*fromtableNamewherecolumnName->'$.xx'='xx'模糊匹配jsonArray字段select*fromtableNamewh......