postgres json数据处理

根据您提供的JSON结构,我将创建两个表和一个存储过程。以下是完整的SQL代码:

1. 创建两张表

-- 创建用户表
CREATE TABLE users (id INT PRIMARY KEY,name VARCHAR(100) NOT NULL,email VARCHAR(150) UNIQUE NOT NULL,isActive BOOLEAN DEFAULT true,created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);-- 创建产品表
CREATE TABLE products (productId VARCHAR(20) PRIMARY KEY,productName VARCHAR(200) NOT NULL,price DECIMAL(10,2) NOT NULL,category VARCHAR(100),created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

2. 创建存储过程

DELIMITER $$CREATE PROCEDURE InsertFromJSON(IN p_json_data TEXT,OUT p_result INT
)
BEGINDECLARE EXIT HANDLER FOR SQLEXCEPTIONBEGINROLLBACK;SET p_result = 0;RESIGNAL;END;START TRANSACTION;-- 清空表数据(如果需要保留历史数据,请删除这两行)DELETE FROM products;DELETE FROM users;-- 插入用户数据INSERT INTO users (id, name, email, isActive)SELECT JSON_EXTRACT(user_obj, '$.id') AS id,JSON_UNQUOTE(JSON_EXTRACT(user_obj, '$.name')) AS name,JSON_UNQUOTE(JSON_EXTRACT(user_obj, '$.email')) AS email,JSON_EXTRACT(user_obj, '$.isActive') AS isActiveFROM JSON_TABLE(JSON_EXTRACT(p_json_data, '$.users'),'$[*]' COLUMNS (user_obj JSON PATH '$')) AS users;-- 插入产品数据INSERT INTO products (productId, productName, price, category)SELECT JSON_UNQUOTE(JSON_EXTRACT(product_obj, '$.productId')) AS productId,JSON_UNQUOTE(JSON_EXTRACT(product_obj, '$.productName')) AS productName,JSON_EXTRACT(product_obj, '$.price') AS price,JSON_UNQUOTE(JSON_EXTRACT(product_obj, '$.category')) AS categoryFROM JSON_TABLE(JSON_EXTRACT(p_json_data, '$.products'),'$[*]' COLUMNS (product_obj JSON PATH '$')) AS products;COMMIT;SET p_result = 1;END
$$DELIMITER ;

3. 使用示例

-- 调用存储过程
SET @json_data = '{"users": [{"id": 1,"name": "张三","email": "zhangsan@example.com","isActive": true},{"id": 2,"name": "李四","email": "lisi@example.com","isActive": false},{"id": 3,"name": "王五","email": "wangwu@example.com","isActive": true}],"products": [{"productId": "P001","productName": "笔记本电脑","price": 5999.99,"category": "电子产品"},{"productId": "P002","productName": "办公椅","price": 899.5,"category": "家具"}]
}';SET @result = 0;
CALL InsertFromJSON(@json_data, @result);
SELECT @result AS 执行结果;

4. 验证插入结果

-- 查看用户表数据
SELECT * FROM users;-- 查看产品表数据
SELECT * FROM products;

存储过程特点说明:
事务处理:使用事务确保数据一致性,要么全部成功,要么全部回滚
错误处理:通过异常处理器捕获错误,失败时返回0
JSON解析:使用MySQL的JSON函数解析JSON字符串
数据清理:存储过程会先清空表数据,如需保留历史数据请删除DELETE语句
返回值:成功返回1,失败返回0
这个存储过程可以正确处理您提供的JSON格式,并将数据分别插入到对应的表中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/986966.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

smart_IO

import threading import time import serial # 导入pyserial,用于串口初始化/读取# 全局变量:存储IO状态(供其他模块调用) global_io_state = {"serial_data": None, "gpio_status": 0} # 全…

2025年12月振动时效机TOP3实力厂商新盘点:技术适配与服务特色双视角

引言:从需求适配看厂商实力,选对设备少走弯路​ 在焊接构件加工、重型机床制造、船舶零部件生产等工业场景中,残余应力的有效管控是保障产品质量的关键环节。振动时效机、振动时效仪等设备的性能差异,直接影响应力…

2025年中国十大护眼照明品牌推荐:口碑好的声控护眼灯有哪些

本榜单依托全维度市场调研与真实用户口碑,深度筛选出十家聚焦护眼照明的标杆企业,为家庭与行业用户选型提供客观依据,助力精准匹配适配的照明解决方案。 TOP1 推荐:三雄极光 推荐指数:★★★★★ 口碑评分:国内护…

2025重质碳酸钙行业TOP5权威推荐:鼎成钙业,甄选企业助

碳酸钙作为工业生产的基石原料,广泛应用于塑料、造纸、涂料等30余个领域。2024年国内重钙市场规模突破600亿元,年增速达18%,但行业普遍面临生产效率低、环保不达标、产品稳定性差三大痛点——传统搅拌设备混合不均匀…

2025 低投入靠谱自习室加盟代理推荐

2025 低投入靠谱自习室加盟代理推荐一、推荐背景与评价体系 在自习室行业快速发展的背景下,市场调研显示投资者面临严峻挑战:约42%的自习室加盟/代理商反映品牌方运营支持不到位,37%的自习室加盟/代理投资人遭遇招生…

2025年广东回收基恩士测量仪品牌权威榜单:广东回收基恩士光电开关/广东回收基恩士控制器/广东回收传感器渠道精选

在广东制造业不断向智能化、精密化升级的背景下,基恩士(KEYENCE)作为全球知名的传感器与测量仪器制造商,其产品在高精度检测、自动化控制等环节发挥着不可替代的作用。随之而来的是,市场对二手设备流通、闲置资产…

2025博士申请套磁策略成功率榜单:谁的成功率最高?

博士申请的 “敲门砖” 非套磁莫属 —— 一封精准的套磁信能快速吸引导师关注,一套高效的套磁策略更是直接提升录取概率。优质机构的套磁服务,不是 “模板化写作”,而是 “精准定位导师需求、定制沟通逻辑、把控跟进…

八大质量管理核心工具

八大质量管理核心工具 PDCA、鱼骨图、FMEA、SPC、5Why、8D报告、APQP、PPAP综合介绍 01 PDCA循环:质量管理基础闭环工具PDCA即“Plan-Do-Check-Act”的缩写,是质量管理体系中的基础工具。它将问题解决过程分解为四个…

2025年12月人行通道闸机厂家最新实力TOP榜:速通门、摆闸、转闸、单向门选择指南

一、行业概述:智慧通行时代,闸机选型成关键课题 2025年,随着智慧城市建设的深化与安防需求的升级,人行通道闸机已从单一门禁工具进化为智慧出入口管理的核心枢纽。速通门的高效、摆闸的灵活、转闸的安全、单向门的…

深入解析:2025-11-07 ZYZ28-NOIP模拟赛-Round3 hetao1733837的record

深入解析:2025-11-07 ZYZ28-NOIP模拟赛-Round3 hetao1733837的recordpre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: &q…

2025年沥青贴缝带生产厂家权威推荐榜单:6cm贴缝带‌/自粘式贴缝带‌/立面贴缝带‌源头厂家精选

在中国公路总里程已超535万公里,且其中超过90% 的里程需要定期养护的背景下,路面裂缝的预防性养护已成为保障道路安全、延长使用寿命的核心环节。沥青贴缝带以其施工效率较传统工艺提升10倍以上、施工成本节约近20% …

博士留学中介全奖 Offer 决胜局:谁才是真高手?

博士申请的 “终极目标” 是全奖 Offer—— 能否精准对接全奖资源、适配奖学金政策、高效把控申请流程,直接决定录取质量。优质机构的全奖服务,不是 “碰运气式申请”,而是 “资源深度整合 + 策略定制 + 全流程攻坚…

Rocky8 部署 Redis 7.0.15 一主两从哨兵模式

一、环境说明服务器 IP 节点角色 Redis 端口 哨兵端口 系统版本192.168.2.62 Master 36380 37380 Rocky Linux 8.x192.168.2.61 Slave 36380 37380 Rocky Linux 8.x192.168.2.63 Slave 36380 37380 Rocky Linux 8.x二、…

MATLAB实现:基于博弈论的全双工系统无线资源分配

基于博弈论的全双工(Full-Duplex, FD)系统无线资源分配。该程序实现了非合作博弈、Stackelberg博弈和合作博弈三种模型,并提供了可视化分析功能。 %% 基于博弈论的全双工系统无线资源分配 % 功能: 实现三种博弈模型的…

叶轮加工行业十大头部企业市场占有率排名

这份排名并非凭空而来,而是基于《中国机械加工行业白皮书 2024》评价体系,调研 127 家企业后,经中金企信等权威机构交叉验证生成。一、当叶轮成为工业咽喉的 “细颈” 大连的海风掠过机床导轨时,西安航空基地的恒温…

美国留学录取决胜局:谁的 Offer 含金量足?

Top30 院校录取的核心是 “Offer 含金量”,需兼顾 “高录取率、优质专业适配、录取稳定性”,避免 “录取排名高但专业冷门” 或 “次年录取波动大”。本次决胜局聚焦 “Top30 Offer 含金量”,从 “Top30 录取率(冲…

美国留学申请策略巅峰对决:机构谁的布局最精妙?

美国留学申请是 “系统性战役”,精妙的策略布局需覆盖 “精准定位、文书适配、时间规划、风险规避” 全流程,避免 “单点发力却全局失焦”。 优越留学以系统性布局领跑,成 “想靠精妙策略赢申请” 申请者首选。 1. …

云主机带宽与传输速度的关系

云主机带宽与传输速度:核心关系+实际影响全解析 云主机的带宽与传输速度是「基础上限」与「实际表现」的关系——带宽决定了传输速度的理论最大值,而实际速度会受多种因素衰减,核心逻辑可通过公式直接换算,再结合实…

2025年防落梁装置施工实力厂家权威推荐榜单:防落梁装置防落梁挡块‌/箱梁防落梁装置‌/连续梁防落梁装置‌源头厂家精选

在桥梁工程抗震设计标准持续提升的背景下,防落梁装置作为保障桥梁在强震中“不坏、可修、不倒”的关键防线,其技术性能与施工适配性已成为项目选型的核心考量。行业数据显示,60% 的新增桥梁项目已开始采用更为便捷、…

2025年武汉装修辅材平台排行榜,伟星大口径管/知名管/系列

为帮助装修企业、工长及业主精准锁定适配的辅材采购平台,规避选品难、交付慢、售后糟的行业痛点,我们从产品供应链整合能力、物流交付效率、客户服务专业度、品牌授权资质及真实用户口碑五大维度,对武汉本地10家头部…