Go语言技术文章
-
Redis BITPOS 在参数末尾加 BIT 后,会把 start 和 end 当作包含端点的位范围,并返回匹配位的绝对编号。本文说明 BYTE 与 BIT 的区别、首个置位点查询和 -1 返回值的处理方式。495 收藏 -
用 HEX(WEIGHT_STRING(...)) 观察 MySQL 排序规则生成的二进制权重,区分字符字符串与二进制字符串,并掌握 AS CHAR、AS BINARY 的长度边界。492 收藏 -
通过MSET和LMOVE示例说明Redis COMMAND GETKEYS如何从完整命令提取键名,并对比GETKEYSANDFLAGS的用途标志、客户端参数边界与接入注意事项。492 收藏 -
Redis SORT_RO 的 GET 不是再次执行查询,而是按排序结果中的成员替换键名模式,读取外部对象字段。本文用 order:ids、order:item:* 和 order:weight:* 说明 BY、GET、GET #、LIMIT 以及缺失字段的返回边界。491 收藏 -
MySQL BENCHMARK 只重复标量表达式的运行时,不会完整重复解析、优化器、锁与结果集传输。本文用排查式方法拆开两种耗时,说明如何设计可解释的测试。481 收藏 -
Redis ZINTERCARD 可以只返回多个有序集合的交集数量。本文从键准备、命令参数和匹配门槛出发,说明精确计数、LIMIT 提前停止、不存在键和集群多键边界。474 收藏 -
Redis PFCOUNT可同时传入多个HyperLogLog键,估算跨渠道用户的去重并集。本文通过原创命令示例说明统一身份口径、PFMERGE已有目标参与合并、集群同槽与高频查询的处理边界。471 收藏 -
Redis Lua 返回数组时,连续索引会映射为 RESP 数组,但 nil 会截断后续元素,关联字段不会自动成为对象,RESP2 下数字和布尔值也有特定转换规则。本文按脚本协议与客户端协议两层说明排查方法,并给出 RESP3 map 的使用边界。461 收藏 -
MySQL 锁定服务用 namespace 与 lock name 组成标识,并支持读写锁;GET_LOCK() 只有一个命名字符串且始终是排他锁。本文用原创 SQL 对比两种命名粒度、释放范围和监控字段。460 收藏 -
Redis RANDOMKEY 会从当前选中的数据库返回一个随机键名;数据库为空时返回空值。本文用 redis-cli 和 Go 示例说明当前库、返回值、O(1) 语义及与 SCAN、业务随机索引的边界。459 收藏 -
SET DEFAULT ROLE 改的是账号的默认激活集合,主要影响下一次认证登录;已有连接不会自动切换。本文区分默认角色、当前会话和全量自动激活策略,并给出同一连接的核对方法。454 收藏 -
从 CROSSSLOT 现象出发,说明 Redis Cluster hash tag 的取值规则、业务键设计、CLUSTER KEYSLOT 检查方式,以及共槽位与热点之间的边界。450 收藏 -
ST_Validate 返回 NULL 不能直接等同于无效几何。本文用原始列 IS NULL、ST_IsValid、ST_AsText 和审计 CASE 区分 SQL 空值、语法异常与几何无效,并说明地理 SRS 越界时的报错边界。447 收藏 -
MySQL FORMAT 的第三个参数 locale 会改变小数点、千分位符号和分组方式。本文用 en_US 与 de_DE 对比说明写法,并解释默认值、NULL、小数位和排序注意事项。443 收藏 -
MySQL ST_Collect 可以把同一分组中的几何值聚合为一个 Multi 几何或 GeometryCollection。本文给出按业务字段分组的写法,并说明 DISTINCT、NULL、SRS 和空间融合边界。432 收藏