免费编程教程

MySQL 用 UNION 和 UNION ALL 的区别

UNION 自动去重UNION ALL 保留所有行。UNION 需要额外排序去重数据量大时性能比 UNION ALL 差很多。不需要去重的查询应该用 UNION ALL。

21 0 0
2026-07-05
MySQL 使用索引排序 ORDER BY 不走 filesort

ORDER BY 和 WHERE 共用同一个索引或者 ORDER BY 字段有独立索引时无需额外排序。Extra 里没有 Using filesort 说明走索引排序。本文解释索引排序的条件。

30 0 0
2026-07-05
PostgreSQL jsonb 字段查询操作符

PostgreSQL 的 jsonb 类型用 -> 返回 JSON 对象->> 返回文本#> 按路径访问嵌套字段。了解这些操作符可以高效查询 JSON 数据。本文对比各操作符的返回值类型。

25 0 0
2026-07-05
MySQL 唯一约束和 NULL 的关系

MySQL 的唯一约束允许多行 NULL 值因为 NULL 不等于任何值包括另一个 NULL。业务上需要唯一但不强制填写时这可能不是你想要的行为。本文给出替代方案。

19 0 0
2026-07-05
MySQL 清空表数据用 TRUNCATE 还是 DELETE

TRUNCATE 清空表且重置自增 ID 到初始值速度极快但不可回滚。DELETE FROM table 逐行删除保持自增 ID 计数可回滚但速度慢。本文对比两种方式的差异。

32 0 0
2026-07-05
PostgreSQL 中时间区间查询的 BETWEEN 边界问题

WHERE created_at BETWEEN 2024-01-01 AND 2024-01-31 不包括 1 月 31 日 23:59:59 之后的数据。用 >= AND < 下一天的写法可以避免边界漏数据。本文用实际数据对比两种写法的差异。

26 0 0
2026-07-05
MySQL 字符串字段没有索引导致全表扫描

WHERE name = something 在 VARCHAR 字段上如果不建索引即使条件准确也只能全表扫描。前缀索引可以显著减少索引大小但需要选择合适的长度。本文介绍如何确定前缀索引的长度。

17 0 0
2026-07-05
MySQL COUNT 哪个最快

MySQL COUNT 哪个最快是开发中经常遇到的问题。本文从实际场景出发分析原因并给出可操作的解决方案适合正在排查这个问题的开发者参考。

14 0 0
2026-07-04
PostgreSQL NULL 不等于 NULL

PostgreSQL NULL 不等于 NULL是开发中经常遇到的问题。本文从实际场景出发分析原因并给出可操作的解决方案适合正在排查这个问题的开发者参考。

21 0 0
2026-07-04
PostgreSQL 中的 EXPLAIN ANALYZE 执行了真的 SQL

EXPLAIN ANALYZE 会真实执行 SQL 语句不只是估算对 INSERT/UPDATE/DELETE 会真正修改数据。如果在生产库上执行可能会造成数据变更。只想看执行计划不加 ANALYZE。本文区分 EXPLAIN 和 EXPLAIN ANALYZE 的行为差异。

25 0 0
2026-07-04
MySQL 分页越往后翻越慢改成游标分页

LIMIT 100000,20 OFFSET 越大 MySQL 需要跳过的行数越多查询越慢因为索引扫描到 offset 位置之前的行也不能跳过。改用 WHERE id > last_id LIMIT 20 的游标分页性能不随页码增加而下降。本文列出两种分页方式的 EXPLAIN 结果对比。

29 0 0
2026-07-04
分词器与同义词

自定义 IK 分词词典,配置同义词过滤器改善搜索体验。

15 0 0
2026-07-03
搜索引擎 Elasticsearch 进阶

深入理解评分机制、分析器原理和搜索模板。

16 0 0
2026-07-03
Milvus 向量引擎

部署 Milvus 处理万亿级向量数据,用于相似图片和语义搜索。

18 0 0
2026-07-02
Qdrant 向量数据库

使用 Rust 构建的 Qdrant 存储高维向量,支持负载过滤。

36 0 0
2026-07-02
Weaviate 向量搜索

使用 Weaviate 进行多模态向量搜索,支持 GraphQL 接口。

11 0 0
2026-07-02
Chroma 向量存储

在本地运行 Chroma 存储文档嵌入,轻松集成 LangChain。

15 0 0
2026-07-02
向量数据库 Pinecone

存储和查询向量嵌入,为 LLM 应用提供长短期记忆。

14 0 0
2026-07-02
Azure Cosmos DB

探索全球分布、延迟毫秒级的托管数据库,支持 MongoDB API 等。

18 0 0
2026-06-30
AWS DynamoDB

使用 DynamoDB 构建高性能、自动扩缩容的键值/文档数据库。

36 0 0
2026-06-30
Liquibase 版本管理

使用 Liquibase 编写可跨数据库执行的变更集,锁定和回滚。

15 0 0
2026-06-30
数据库迁移工具 Flyway

使用 Flyway 进行数据库 schema 的版本化管理,集成 CI/CD 流程。

11 0 0
2026-06-30
数据库备份与恢复

制定备份计划,使用 mysqldump 或 XtraBackup 进行一致性恢复。

11 0 0
2026-06-30
数据归档策略

将不常访问的历史数据迁移至低成本存储,保持热表性能。

10 0 0
2026-06-30
Vitess 云原生数据库

使用 Vitess 在 K8s 上运行大规模 MySQL 集群,实现自动分片管理。

26 0 0
2026-06-30
ShardingSphere 分片

集成 ShardingSphere-JDBC 实现透明的分库分表与读写分离。

20 0 0
2026-06-30
数据库分库分表

解决单表大数据量瓶颈,设计分片键与路由算法。

5 0 0
2026-06-30
读写分离实现

通过 ShardingSphere 或应用层路由将读流量分发到从库。

12 0 0
2026-06-30
数据库主从复制

配置 MySQL 主从同步,分析异步、半同步复制的延迟与数据一致性。

18 0 0
2026-06-30
Airtable 数据库

使用 Airtable 构建灵活的内容库,通过 API 将其作为后端数据源。

25 0 0
2026-06-18
慢查询分析与优化

使用 Explain 分析执行计划,定位慢 SQL,通过改写、加索引等方式优化。

20 0 0
2026-06-16
数据库索引优化

理解索引原理,掌握创建高效索引、避免索引失效和覆盖索引的技巧。

27 0 0
2026-06-16
Redis 消息发布订阅

利用 Redis Pub/Sub 模式实现进程间消息广播,构建简单的实时通知系统。

39 0 0
2026-06-16
数据库迁移与种子

学习数据库迁移的最佳实践,使用工具生成可回滚的变更脚本并填充初始数据。

21 0 0
2026-06-16
Firebase 实时数据库

使用 Firebase Realtime Database 实现客户端间数据实时同步,快速构建协作应用。

24 0 0
2026-06-13
Oracle 数据库基础

学习 Oracle 数据库架构、存储结构、用户权限及 PL/SQL 编程,步入企业级数据管理。

13 0 0
2026-06-13
Microsoft SQL Server 入门

熟悉 SQL Server 体系结构、T-SQL 编程及使用 SSMS 进行数据库管理与维护。

21 0 0
2026-06-13
SQLite 轻量数据库

学习 SQLite 的特性、使用场景及 Python/Android 等语言的调用方法,实现轻量数据存储。

21 0 0
2026-06-13
Elasticsearch 搜索引擎

掌握 ES 核心概念、DSL 查询、聚合分析与集群运维,构建企业级全文搜索与日志处理平台。

27 0 0
2026-06-13
Redis 缓存实战

深入 Redis 数据类型、持久化、哨兵和集群,构建高可用缓存与消息队列系统。

25 0 0
2026-06-13
MongoDB 基础与聚合

学习 MongoDB 的 CRUD、索引、聚合管道和数据建模,灵活处理半结构化数据。

23 0 0
2026-06-13
PostgreSQL 入门到精通

全面学习 PostgreSQL,包括复杂查询、窗口函数、JSON 支持、事务隔离与性能调优。

42 0 0
2026-06-13
MySQL 数据库教程

系统学习 MySQL 安装、建表、查询、索引优化与备份恢复,掌握最流行的开源关系型数据库。

27 0 0
2026-06-13
NoSQL 数据库概述

了解 NoSQL 数据库的类型、原理及适用场景,对比 SQL 与 NoSQL 的优缺点。

25 0 0
2026-06-13
SQL 数据库查询入门

零基础学习 SQL 增删改查,掌握 SELECT、WHERE、JOIN 等核心语句,开启数据操作大门。

30 0 0
2026-06-13
Redis 缓存与消息队列实战

深入 Redis 数据类型、持久化策略,构建缓存加速层、消息队列和分布式锁,解决高并发场景下的性能瓶颈。

36 0 0
2026-06-12
MongoDB 文档数据库应用开发

学习 MongoDB 数据建模、CRUD 操作、聚合管道以及高可用副本集与分片集群设计,应对大数据场景下的灵活存储需求。

25 0 0
2026-06-12
SQL 数据库设计与查询优化

掌握关系型数据库设计范式、复杂 SQL 编写、索引策略与查询执行计划分析,提升数据库性能并避免常见陷阱。

23 0 0
2026-06-12