一、hash,业务场景是用于查询数据,具体操作如下:
1、查看redis中某个hash的所有数据:hgetall baiyibutie(key);
2、查看redis中某个hash的数据量:hlen baiyibutie(key);
3、redis写入hash数据:1) conn.hmset("baiyibutie", {"key": "123456", "value": "写入hash数据"},{"key2": "123456", "value": "写入hash数据"}.....) #hmst用于插入多条数据,是这种写法,hset用于插入单条数据,下面那种写法;
2) conn.hset("baiyibutie", "123456", "写入第二种hash数据") #key field value(key对应"baiyibutie",field对应"123456",value对应"写入第二种hash数据");
4、查询数据:hget baiyibutie(key) 123456(field) (key对应"baiyibutie",field对应"123456",value对应"写入第二种hash数据"),程序里面的写法:client.hget('baiyibutie', 'name');
二、list,业务场景是用于队列,例如从左侧插入数据(lpush),从右侧取数据(rpop),具体操作如下:
1、左侧插入数据:lpush key data,右侧插入数据rpush key data;(可以用该命令创建list)
2、左侧取一个数据并从redis中删除该数据:lpop key,右侧取一个数据并从redis中删除该数据:rpop key;
3、取出数据,但是保留数据:lrange key 0 0,后面的两个数字指的是list的下标,可以是多个值,例如,lrange key 0 -1,表示取出所有值;
三、set,无序集合,业务场景是判断之前是否有这个数据,具体操作如下:
1、插入数据:sadd key data;(也用于创建数据库,第一次写数据时)
2、通过返回值来判断该数据库里面是否存在该数据:如果插入数据后返回值为"1",那么表示该数据库里面没有该数据,插入成功;如果插入数据后返回值为"0",那么表示数据库里面有该数据,插入失败。可以用这个功能判断该数据库里面有没有该数据;
result = redis_client.sadd("coupon_access", coupon_access) if int(result) == 1: return True else: return False