欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Redis常用命令(一)字符串鍵、散列鍵

redis是key-value的數(shù)據(jù)結(jié)構(gòu),每條數(shù)據(jù)都是一個(gè)鍵值對

定遠(yuǎn)ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!

鍵的類型是字符串,因?yàn)槟J(rèn)是字符串所以都不用加引號(hào)

注意:鍵不能重復(fù)

值的類型分為五種:

    字符串string

    散列hash

    列表list

    集合set

    有序集合zset

### string字符串鍵

set key value  # 設(shè)置的鍵不存在則為添加,如果設(shè)置的鍵已經(jīng)存在則修改

set name daiby

set key value [NX|XX]  # NX: 如果key不存在則成功,反之失?。ú桓采w舊值)! XX: 如果key存在則成功,反之失?。ㄒ欢ǜ采w舊值)!

set aaa 222 nx  # 如果aaa存在則失敗

set aaa 222 xx  # 如果aaa不存在則失敗

setnx key value  # 僅在key不存在的情況下,將key的值設(shè)置為value,等同于set key value nx

msetnx key value key value # 僅在所有key不存在的情況下,將key的值設(shè)置為value

getset key new-value  # 將字符串鍵的值設(shè)置為新值,并返回舊值

getset aaa 444

get key  # 獲取鍵值

get name

mset key1 value1 key2 value2 ...  # 設(shè)置多個(gè)鍵值

mset gender M age 18 addr SH

mget key1 key2 key3...  # 獲取多個(gè)鍵值

mget gender age addr

append key value  # 追加值,將內(nèi)容追加到字符串的末尾

append name 123  --> "daiby123"

strlen key  # 返回字符串鍵key存儲(chǔ)的值的長度,redis會(huì)記錄每個(gè)字符串值的長度,時(shí)間復(fù)雜度O(1)

strlen aaa

setrange key index value  # 從索引index開始,用value覆寫鍵所存儲(chǔ)的字符串值,只接受正數(shù)索引

setrange aaa 1 222  --> 4222

getrange key start stop  # 范圍取值,返回位于start和end兩個(gè)索引之間的值,閉區(qū)間,索引可以是正數(shù)或負(fù)數(shù)

getrange aaa 0 2

getrange aaa 0 -2

# 只要存儲(chǔ)在字符串鍵里面的值可以被解釋為64位整數(shù)或者IEEE-754標(biāo)準(zhǔn)的64位浮點(diǎn)數(shù),那么就可以對這個(gè)字符串鍵執(zhí)行針對數(shù)字值的命令

# 即使字符串鍵存儲(chǔ)的是數(shù)字值,也可以執(zhí)行append,strlen,setrange,getrange

incrby key increment  # 將key所存儲(chǔ)的值加上增量increment

incrby aaa 100

decrby key decrement  # 將key所存儲(chǔ)的值減去減量decrement

decrby aaa 1000

incr key  # 加一,等同于incrby key 1

incr ccc

decr key  # 減一,等同于decrby key 1

decr ccc

incrbyfloat key increment  # 浮點(diǎn)數(shù)的自增和自減,沒有decrbyfloat,通過給定負(fù)值來達(dá)到相應(yīng)的效果

incrbyfloat ccc 1.11

incrbyfloat ccc -23.45

# set,get,setnx,append等命令同樣可以用于設(shè)置二進(jìn)制數(shù)據(jù)

# 與存儲(chǔ)文件時(shí)索引不同,存儲(chǔ)二進(jìn)制數(shù)索引是從左到右遞減

>>>import redis

>>>r = redis.StrictRedis()

>>>r.set('bites', 0b10010100)

>>>bin(int(r.get('bites')))  # 轉(zhuǎn)換成十進(jìn)制數(shù)是148

>>>r.append('bites',0b111)   # 十進(jìn)制數(shù)7

>>>bin(int(r.get('bites')))  # 轉(zhuǎn)換成十進(jìn)制數(shù)是1487

setbit key index value  # 設(shè)置二進(jìn)制位的值,將給定索引上的二級(jí)制位的值設(shè)置為value

setbit bites 2 1

getbit key index  # 返回給定索引上的二進(jìn)制位的值

getbit bites 6

bitcount key start end  # 計(jì)算并返回字符串存儲(chǔ)的值中被設(shè)置為1的二進(jìn)制位的數(shù)量

bitcount bites 0 -1

# strlen,setrange,getrange不適用于中文

### hash用于存儲(chǔ)對象,對象的結(jié)構(gòu)為屬性、值,值的基本類型為string

### 散列的鍵和值都可以是文字、整數(shù)、浮點(diǎn)數(shù)或者二進(jìn)制數(shù)據(jù)

### 盡量使用散列鍵來存儲(chǔ)鍵值對,而不是字符串鍵,避免命名沖突和節(jié)省內(nèi)存

hset key field value  # 設(shè)置單個(gè)屬性

hset py1 name daiby

hsetnx key field value  # 如果散列鍵key中,field不存在,則命令成功

hsetnx message addr sh

hmset key field1 value1 field2 value2 ...  # 設(shè)置多個(gè)屬性

hmset py3 name daiby age 18 addr SH

hexists key field  # 查看給定的field是否存在

hexists message addr

hkeys key  # 獲取指定鍵所有的屬性

hkeys py3

hvals key  # 獲取指定鍵的所有屬性的值

hvals py3

hget key field  # 獲取指定鍵的一個(gè)屬性的值

hget py1 name

hgetall key  # 返回散列鍵key包含的所有域值對

hgetall message

hmget key field1 field2 ...  # 獲取指定鍵的多個(gè)屬性的值

hmget py3 name age addr

hdel key field1 field2 ...  # 刪除屬性,屬性對應(yīng)的值會(huì)被一起刪除,如果想刪除hash鍵就把所有的屬性都要?jiǎng)h除

hdel name age addr

hlen key  # 返回散列鍵key包含的域值對數(shù)量

hlen message

hincrby key field increment  # 為散列鍵key中field的值加上或減去整數(shù)increment

hincrby message id -10

hincrbyfloat key filed increment  # 為散列鍵key中field的值加上或減去浮點(diǎn)數(shù)increment

hincrbyfloat message id +1.1

本文題目:Redis常用命令(一)字符串鍵、散列鍵
URL地址:http://chinadenli.net/article24/pijjje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、網(wǎng)站營銷、外貿(mào)建站、服務(wù)器托管、虛擬主機(jī)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)