当前位置: 首页 > news >正文

Postgresql几个常用的json操作

  • 将行记录转为jsonb
    row_to_json(表名或别名)
  • 将行记录集转为json数组 (jsonb)
select json_agg(row_to_json(t) order by t.task_name) into v_next_taskfrom dyna_flow_task t where t.zid=v_template_id and t.level=v_next_level ;
  • 访问json字段,用->>‘字段名’
 SELECT DISTINCT ON ((value ->> 'user_id')) value->>'loginname' AS loginid,value->>'user_id' AS user_idFROM jsonb_array_elements(fn_flow_getappr_users_by_task_ids(array[v_last_node_id])::jsonb) AS elem(value)
  • 将json数组转为记录集
    用jsonb_array_elements
SELECT elem ->> 'id'FROM jsonb_array_elements((select * from fn_flow_getnexttask_by_instanceid('1362327695287267328') AS next_task)::jsonb) AS elem
  • 单个json转为数组型json,用jsonb_build_array
SELECT jsonb_build_array(row_to_json(sub))
FROM (SELECT create_by,ROW_NUMBER() OVER (PARTITION BY bill_id, cycle ORDER BY create_date DESC) as rnFROM dyna_flow_logWHERE bill_id = '1362327695287267328' AND cycle = 1
) sub
-- 只取 create_date 最大的那条记录
WHERE rn = 1;

相关文章:

  • 安卓手机怎样配置数据加速
  • 10 C 语言常量详解:#define 与 const 定义常量及其区别与应用
  • JavaScript 版本号比较
  • 软件设计师/系统架构师---计算机网络
  • C++:在条件判断时何时为if,何时为else (易混淆※※※)
  • Leetcode 3524. Find X Value of Array I
  • NFS服务共享和安装命令的补充
  • 辅助函数构造题目(缓慢更新,遇到更道)
  • next.js 如何实现动态路由?
  • 云点数据读写
  • 【小沐杂货铺】基于Three.JS绘制卫星轨迹Satellite(GIS 、WebGL、vue、react,提供全部源代码)
  • Java编程基础(第四篇:字符串初次介绍)
  • 8、constexpr if、inline、类模版参数推导、lambda的this捕获---c++17
  • PySide6 GUI 学习笔记——常用类及控件使用方法(常用类矩阵QRect)
  • 基于Spring AI Alibaba实现MCP协议的SSE实时流式服务深度解析
  • 力扣刷题 - 203.移除链表元素
  • leetcode(01)森林中的兔子
  • 六、小白如何用Pygame制作一款跑酷类游戏(静态障碍物和金币的添加)
  • 深入浅出:LDAP 协议全面解析
  • LangChain 单智能体模式示例【纯代码】
  • 新东方:2025财年前三季度净利增29%,第四财季海外业务将承压
  • 人民日报:外资车企携新车、前沿技术亮相上海车展,坚定信心深耕中国市场
  • 秦洪看盘|平淡走势中或将孕育主旋律
  • 福建海警位金门附近海域依法开展常态化执法巡查
  • 蚌埠一动物园用染色犬扮熊猫引争议,园方回应:被投诉已撤走
  • 北京朝阳法院:未经许可使用他人剧本语句和情节构成侵权