list列表是使用双向链表实现,查询复杂度为O(n),
set集合,查询复杂度为O(1)
zset有序集合,查询复杂度为O(logn)
keys : 返回满足给定的正则表达式的所有key
exists : 确认一个key是否存在,返回1代表存在,返回0代表不存在
del : 删除一个key
expire : 设置一个key的过期时间,这个在redis我记不住的那些命令(一) 有相应的解释和示例
move : 将当前数据库中的key移动到其他数据库中
persist : 移除给定key的过期时间, 这个也在redis我记不住的那些命令(一) 有相应的解释和示例
randomkey : 随机返回key空间的一个key
rename : 重命名key
type : 返回某个key的值的类型
getset : 修改某个key的值,是增删改查中的“改”, 增是set命令,删是del命令,查是get命令或exists命令,改则是getset命令
# 1. keys : 返回满足给定的正则表达式的所有key
# *代表任意,即返回所有key
127.0.0.1:6379> keys *# 代表返回所有以count开头的key
127.0.0.1:6379> keys count*# 2. exists : 确认一个key是否存在,返回 1 代表存在,返回0代表不存在
127.0.0.1:6379> exists age
(integer) 1 # 代表存在# 3. del : 删除一个key,返回1代表删除成功,返回0代表key不存在或删除失败
127.0.0.1:6379> del age# 4. expire : 设置一个key的过期时间,单位为秒
127.0.0.1:6379> expire age 60# 5. move : 将当前数据库中的key移动到其他数据库中
127.0.0.1:6379> select 0 # select命令用于选择数据库,0代表0号数据库
127.0.0.1:6379> set weight 80
127.0.0.1:6379> get weight
80
127.0.0.1:6379> move weight 1 # 将weight移动到1号数据库
127.0.0.1:6379> get weight
(nil)
127.0.0.1:6379> select 1 # select命令用于选择数据库,1代表1号数据库
127.0.0.1:6379[1]> get weight
80# 6. persist : 移除给定key的过期时间
127.0.0.1:6379> persist age# 7. randomkey : 随机返回key空间的一个key
127.0.0.1:6379> randomkey
"count"# 8. rename : 重命名key
# rename key newkey
127.0.0.1:6379> rename count count0 # 将count重命名为count0# 9. type : 返回某个key的值的类型
127.0.0.1:6379> type count
string# 10. getset : 修改某个key的值,是增删改查中的“改”,这个命令返回的是修改之前的数值。
127.0.0.1:6379> getset weight 88
"80"
在对于过期数据上,有三种策略分别为: 定时删除、惰性删除、定期删除
经度、纬度
1. geoadd : 新增地理位置的坐标
2. geopos : 获取地理位置的坐标
3. geodist : 获取两个地理位置的距离
4. georadius : 根据给定的经度纬度坐标获取指定范围内的地理位置集合
5. georadiusbymember : 根据给定的地理位置获取指定范围内的地理位置集合
第四个命令和第五个命令的区别只是在于指定圆的圆心的方式不同
6. geohash : 获取某个地址位置的geohash值
# 1. geoadd 新增地理位置的坐标
127.0.0.1:6379> geoadd china 116.46 39.92 beijing
(integer) 1
127.0.0.1:6379> geoadd china 117.2 39.13 tianjin
(integer) 1
127.0.0.1:6379> geoadd china 121.48 31.22 shanghai
(integer) 1
127.0.0.1:6379> geoadd china 106.54 29.59 chongqing
(integer) 1
127.0.0.1:6379> geoadd china 114.17 22.28 Hongkong 113.54 22.19 Macao 121.30 25.03 taiwan
(integer) 3# 2. 获取地理位置的坐标
127.0.0.1:6379> geopos china beijing
1) 1) "116.45999997854232788"2) "39.9199990416181052"127.0.0.1:6379> geopos china beijing tianjin
1) 1) "116.45999997854232788"2) "39.9199990416181052"
2) 1) "117.19999998807907104"2) "39.12999996316577977"# 3. 获取两个地理位置的距离,最后的km代表是千米,默认单位为米
127.0.0.1:6379> geodist china beijing chongqing km
"1461.4332"# 4. 根据给定的经度纬度坐标获取指定范围内的地理位置集合
# 下例:以116.46,39.92为中心,距离在200km以内的地理位置,注意200与km之间是有空格的
127.0.0.1:6379> georadius china 116.46 39.92 200 km
1) "beijing"
2) "tianjin"# 5. 根据给定的地理位置获取指定范围内的地理位置集合
# 下例:以beijing为中心,距离在200km以内的地理位置,注意200与km之间是有空格的
127.0.0.1:6379> georadiusbymember china beijing 200 km
1) "beijing"
2) "tianjin"
第四个命令和第五个命令的区别只是在于指定圆的圆心的方式不同# 6. 获取某个地址位置的geohash值
127.0.0.1:6379> geohash china beijing
1) "wx4g455wfe0"