Go语言技术文章
-
Redis Sorted Set 分页不能只把 score 当作游标。本文说明 ZRANGE BYSCORE 的排序规则、score 与 member 组成的稳定游标、同分记录处理方式,以及数据变化和性能边界。263 收藏 -
RedisJSON 的 JSON.OBJKEYS 用来读取 JSON 对象的字段名。本文从根对象、嵌套对象和 JSONPath 多匹配三个场景说明命令语法,并区分 nil、空数组与字段名列表的返回边界。317 收藏 -
本文说明 Redis PFADD 如何一次写入多个 HyperLogLog 成员,解释返回值 1/0 与 PFCOUNT 近似基数的区别,并给出按日期划分统计 key、处理重复成员和排查结果异常的实用方案。471 收藏 -
MySQL 存储过程中要读取刚刚执行的 UPDATE、INSERT 或 DELETE 影响行数,应在 DML 后立即使用 GET DIAGNOSTICS 变量 = ROW_COUNT 保存结果。本文说明诊断区、ROW_COUNT()、分支判断和常见边界。227 收藏 -
MySQL 的 READ COMMITTED 与 REPEATABLE READ 不是谁更高级的问题,而是普通一致性读要及时看到新提交,还是在同一事务内保持稳定视图。本文用两会话时间线和选择清单说明差异。332 收藏 -
MySQL 直方图主要用于补充列值分布,帮助优化器估计常量比较的选择性。本文从无索引列、数据偏斜、索引优先级和统计新鲜度几个边界说明何时值得使用,并给出创建、查看和清理直方图的 SQL。151 收藏 -
通过 INFORMATION_SCHEMA.SCHEMATA 查询数据库默认字符集和默认排序规则,重点看 SCHEMA_NAME、DEFAULT_CHARACTER_SET_NAME 与 DEFAULT_COLLATION_NAME,并区分数据库级默认值和表列级显式定义。356 收藏 -
MySQL 联合索引可以把不同列的 ASC 与 DESC 方向写进索引定义。本文用 InnoDB BTREE、WHERE 等值条件和 EXPLAIN 说明怎样设计混合排序索引,并区分正向扫描、反向扫描与 Using filesort。459 收藏 -
MySQL JSON_ARRAYAGG 没有匹配行时会返回 SQL NULL。本文区分无输入行、NULL 扩展行和 JSON 空数组,给出 COALESCE 以及先聚合后关联的稳定处理方案。312 收藏 -
MySQL JSON_TABLE 展开嵌套数组时,父字段可能重复且业务键可能同名。本文用两层 FOR ORDINALITY、NESTED PATH 和业务键保留父子定位,并说明缺少子数组时的 NULL 补行。428 收藏 -
MySQL JSON 字段不能直接建立普通索引时,可以用生成列提取需要查询的标量值,再在生成列上建立二级索引。本文用字符串和数值两个例子说明 JSON_UNQUOTE、CAST、VIRTUAL、STORED、表达式匹配和常见边界。345 收藏 -
MySQL INFORMATION_SCHEMA.CHECK_CONSTRAINTS 可以查看 CHECK 约束所属数据库、约束名和 CHECK_CLAUSE;若要定位具体表并查看是否启用,应再关联 TABLE_CONSTRAINTS。本文给出按库、按名称和按表排查的查询写法。133 收藏 -
MySQL LOAD XML 默认按 XML 字段名匹配目标列;当两边命名不一致时,可以先把 XML 字段接入同名用户变量,再用 SET 映射到目标列。本文说明完整写法、ROWS IDENTIFIED BY 和常见导入边界。353 收藏 -
用 MySQL 递归 CTE 生成最小日期到最大日期的连续序列,再通过 LEFT JOIN 保留没有业务记录的日期,并用 COALESCE 将空聚合补成 0。201 收藏 -
MySQL ST_Transform 会同时转换几何坐标和 SRID;ST_SRID 只修改参考系标识而不改坐标。本文用一个最小 POINT 示例说明调用方式、结果读取和常见错误边界。209 收藏