摘要: 以下是 array_agg、json_agg 和 jsonb_agg 的具体使用示例。 准备示例数据 假设有一个员工表 employees: sql CREATE TABLE employees ( id INT, dept_id INT, name TEXT ); INSERT INTO empl 阅读全文
posted @ 2026-03-05 16:57 人在代码在 阅读(6) 评论(0) 推荐(0)
摘要: string_agg: 示例场景 假设有一个订单表: customerproduct 张三 苹果 张三 香蕉 李四 橘子 查询每个客户购买的所有商品: sql SELECT customer, string_agg(product, ', ') AS products FROM orders GRO 阅读全文
posted @ 2026-03-05 16:56 人在代码在 阅读(1) 评论(0) 推荐(0)
摘要: # MySQL 语句优化方式详解 ## 📊 **一、SQL 编写优化** ### **1. 避免 SELECT ***```sql-- ❌ 不推荐SELECT * FROM users WHERE status = 1; -- ✅ 推荐:只取需要的列SELECT id, name, email F 阅读全文
posted @ 2026-01-19 14:25 人在代码在 阅读(8) 评论(0) 推荐(0)
摘要: mysql explain # MySQL EXPLAIN 中的 type 字段详解 `type` 字段是 **EXPLAIN 输出中最重要的指标之一**,它表示 MySQL 如何查找表中的行,从最优到最差排序。 ## 📊 **type 类型(性能从优到劣)** ### **1. system ★ 阅读全文
posted @ 2026-01-19 13:59 人在代码在 阅读(9) 评论(0) 推荐(0)
摘要: undo log:提供数据的历史版本,形成版本链 ReadView:定义了一个事务能看到哪些版本数据的规则 可重复读:通过在整个事务期间复用同一个ReadView实现 快照读:通过ReadView + undo log版本链,不需要加锁就能实现一致性读取 这种机制使得: 读操作不阻塞写操作 写操作不 阅读全文
posted @ 2026-01-14 00:27 人在代码在 阅读(10) 评论(0) 推荐(0)
摘要: MySQL InnoDB的可重复读是多种实现的混合体: 对于纯读操作:使用MVCC一致性快照读。 对于写操作:使用当前读 + 行锁。 对于范围操作:额外添加间隙锁防止幻读。 特殊情况:有自己的优化和权衡。 纯读操作MVCC: -- 普通SELECT使用一致性非锁定读(快照读)START TRANSA 阅读全文
posted @ 2026-01-14 00:11 人在代码在 阅读(21) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2026-01-12 21:35 人在代码在 阅读(14) 评论(0) 推荐(0)
摘要: Spring的IOC(控制反转)是将对象的创建、依赖注入和生命周期管理交给Spring容器来统一控制的设计思想。 简单说就是:对象的控制权从程序员转移给Spring框架,实现解耦。 **DI(依赖注入)是IOC的具体实现方式,通过容器自动将被依赖的对象注入到需要它的对象中,无需手动创建或查找依赖。* 阅读全文
posted @ 2026-01-12 21:33 人在代码在 阅读(6) 评论(0) 推荐(0)
摘要: 加密输入 加密密钥 加密算法 改成密文 密钥放在启动参数里 阅读全文
posted @ 2026-01-12 21:32 人在代码在 阅读(5) 评论(0) 推荐(0)
摘要: @resource从spring容器中查找 IOC对象的时候,默认先按照名称去查找,如果名称不存在再按类型去查找。 如果名称和类型不同,比如: @resource priviate huihui huihuison; huihuison这个类也存在的话,那么就会返回huihuison,这样返回的hu 阅读全文
posted @ 2026-01-12 16:07 人在代码在 阅读(5) 评论(0) 推荐(0)