Redis五大資料型別之ZSet(Scores Set)型別-常用命令
命令: zadd
格式: zadd [key值] scores[key] value
示例: zadd people 10 v1 20 v2 30 v3 40 v4 50 v5 60 v6 70 v7
建立一個zset名為people,它的key:10值為v1,key:20值為v2…以此類推
注意: scores[key]值必須為數字,這樣zset才可以排序進行比較。
命令: zrange
格式: zrange [key值] [下標索引開始] [下標索引結束]
示例: zrange people 0 -1
查詢出people的所有值(不包括scores)
zrange people 0 -1 withscores
注意: scores[key]值必須為數字,這樣zset才可以排序進行比較。
命令: zcard
格式: zcard [key值]
示例: zcard people
檢測people中有多少值。
注意: 如果檢測的zset不存在,則返回0。
命令: zcount
格式: zcount [key值] [scores開始位置] [scores結束位置]
示例: zcount people 10 60
檢測people中scores的值10到60之間(包括60和10)有多少資料。
zcount people 10 (60
檢測people中scores的值10到60之間(不包括60)有多少資料。
zcount people (10 (60
檢測people中scores的值10到60之間(不包括60和10)有多少資料。
注意: 如果檢測的zset不存在或區間不對,則返回0。
命令: zrank
格式: zrank [key值] [value值]
示例: zrank people v2
獲取v2在zset中的下標位置
注意: 如果檢測的value不存在,則返回nil。
命令: zscore
格式: zscore [key值] [value值]
示例: zscore people v1
獲得v1對應的分數
注意: 如果檢測的value不存在,則返回nil。
命令: zrevrank
zrevrank [key值] [value值]
示例: zrevrank people v1
逆序獲取v2在zset中的下標位置[就是位置顛倒的]
注意: 如果檢測的value不存在,則返回nil。
命令: zrevrange
格式: zrevrange [key值] 下標索引開始 下標索引結束
示例: zrevrange people 0 -1
獲取所有資料,但是排列與zrange
相反。
zrevrange people 0 -1 withscores
獲取所有資料,但是排列與zrange
相反且顯示score值
。
注意: 如果檢測的value不存在,則返回(empty list or set)。
命令: zrevrangebyscore
格式: zrevrangebyscore [key值] score開始 score結束
示例: zrevrangebyscore people 90 30
獲取score值為90到30之間的所有資料,但是排列與zrange
相反,且score也是反向的。
zrevrangebyscore people 90 30 withscores
獲取score值為90到30之間的所有資料(包括scores資料),但是排列與zrange
相反,且score也是反向的。
注意 : 如果區間超出或不存在,則返回(empty list or set)