首页/数据/数据库速查/SINTER / SINTERCARD 交集运算
本包目录(495 条)
MySQL 基础与连接36 条SQL 语法52 条用户与权限21 条备份与恢复56 条主从复制与高可用53 条性能与调优57 条
Redis 命令96 条
Redis 运维与场景124 条

SINTER / SINTERCARD 交集运算

求多个集合的交集:SINTER 直接返回结果,SINTERSTORE 存到目标键,SINTERCARD(7.0+)只要个数并支持 LIMIT 提前截断。

数据库速查数据更新于 2026-10-12

示例

示例
SADD follow:A u2 u3 u4
SADD follow:B u3 u4 u5
SINTER follow:A follow:B         # u3 u4(共同关注)
SINTERSTORE common:AB follow:A follow:B   # 结果存键,返回基数
SINTERCARD 2 follow:A follow:B   # 2(只要个数)
SINTERCARD 2 follow:A follow:B LIMIT 10   # 最多数 10 个
SINTER返回交集成员
SINTERSTORE交集写入目标键
SINTERCARD只返回基数,LIMIT 可提前停止
交集计算复杂度与最小集合大小相关;LIMIT 能在「只要判断是否有交集」时省掉全量计算。

易错点

  • 大集合两两 SINTER:单命令阻塞明显,尽量预计算 STORE 结果或用 LIMIT
  • SINTERSTORE 结果键无过期:临时结果键忘记清理会长期占内存

数据来源与参考

  • Redis 官方文档: SINTER
  • Redis 官方文档: SINTERCARD

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌