新聞中心
redis是一個(gè)開源的,先進(jìn)的key-value存儲(chǔ),屬于非關(guān)系型緩存數(shù)據(jù)庫(kù),通常被稱為數(shù)據(jù)結(jié)構(gòu)服務(wù)器。redis一共有五種基本的數(shù)據(jù)類型,String類型、hash類型、list類型以及set(無序集合)和zset(有序集合),本篇文章為大家分享一下String類型使用方法。

創(chuàng)新互聯(lián)公司是一家以網(wǎng)站設(shè)計(jì)建設(shè),成都微信小程序、網(wǎng)站開發(fā)設(shè)計(jì),網(wǎng)絡(luò)軟件產(chǎn)品開發(fā),企業(yè)互聯(lián)網(wǎng)推廣服務(wù)為主的民營(yíng)科技公司。主要業(yè)務(wù)涵蓋:為客戶提供網(wǎng)站策劃、網(wǎng)站設(shè)計(jì)、網(wǎng)站開發(fā)、域名注冊(cè)、網(wǎng)站優(yōu)化排名、賣鏈接等服務(wù)領(lǐng)域。憑借建站老客戶口碑做市場(chǎng),建設(shè)網(wǎng)站時(shí),根據(jù)市場(chǎng)搜索規(guī)律和搜索引擎的排名收錄規(guī)律編程,全力為建站客戶設(shè)計(jì)制作排名好的網(wǎng)站,深受老客戶認(rèn)可和贊譽(yù)。
String類型操作及使用
String類型是最簡(jiǎn)單的類型,一個(gè)key對(duì)應(yīng)一個(gè)value,string類型是二進(jìn)制安全的。redis的string可以包含任何數(shù)據(jù),比如JPG圖片或者是序列化的對(duì)象。
語法
set key values 設(shè)置指定 key 的值
127.0.0.1:6379> set name panlifu
OK
127.0.0.1:6379> get name
"panlifu"
get key 獲取指定key的值
127.0.0.1:6379> set name panlifu
OK
127.0.0.1:6379> get name
"panlifu"
getrange key start end 返回key中字符串的子字符,類似python中的切片功能,不同在于redis顧頭顧尾
127.0.0.1:6379> set name panlifu
OK
127.0.0.1:6379> get name
"panlifu"
127.0.0.1:6379> GETRANGE name 0 3
"panl"
getset key value 將給定key的值設(shè)為value,并返回key的舊值(old value)
127.0.0.1:6379> set name panlifu
OK
127.0.0.1:6379> get name
"panlifu"
127.0.0.1:6379> GETRANGE name 0 3
"panl"
127.0.0.1:6379> GETSET name lt
"panlifu"
127.0.0.1:6379> get name
"lt"
getbit key offset 對(duì)key所儲(chǔ)存的字符串值,獲取指定偏移量上的位(bit) ?
setbit key offset value 對(duì)key所儲(chǔ)存的字符串值,設(shè)置或清除指定偏移量上的位(bit) ?
mget key1 [key2…]獲取所有(一個(gè)或多個(gè))給定key的值
127.0.0.1:6379> get name
"panlifu"
127.0.0.1:6379> set age 24
OK
127.0.0.1:6379> get age
"24"
127.0.0.1:6379> get age name
(error) ERR wrong number of arguments for 'get' command
127.0.0.1:6379> mget name age
1) "panlifu"
2) "24"
127.0.0.1:6379>
setex key secondes value 將值value關(guān)聯(lián)到key,并將key的過期時(shí)間設(shè)置為secondes(以秒為單位)
# 第一種方法
127.0.0.1:6379> setex name 5 "panlifu"
OK
127.0.0.1:6379> get name
"panlifu"
127.0.0.1:6379> get name
(nil)
# 第二種方法
127.0.0.1:6379> set name panlifu ex 6
OK
127.0.0.1:6379> get name
"panlifu"
127.0.0.1:6379> get name
"panlifu"
127.0.0.1:6379> get name
"panlifu"
127.0.0.1:6379> get name
(nil)
setnx key value 只有在key不存在時(shí)設(shè)置key的值
127.0.0.1:6379> get name
(nil)
127.0.0.1:6379> setnx name panlifu
(integer) 1
127.0.0.1:6379> get name
"panlifu"
127.0.0.1:6379> get name
"panlifu"
127.0.0.1:6379> setnx name lt
(integer) 0
127.0.0.1:6379> get name
"panlifu"
setrange key offset value 用value參數(shù)覆寫給定key所存儲(chǔ)的字符串值,從偏移量offset開始
127.0.0.1:6379> set name "hello world"
OK
127.0.0.1:6379> get name
"hello world"
127.0.0.1:6379> SETRANGE name 6 "redis"
(integer) 11
127.0.0.1:6379> get name
"hello redis"
mset key value [key value] 同時(shí)設(shè)置一個(gè)或者多個(gè)key -value對(duì)
127.0.0.1:6379> mset name panlifu age 18
OK
127.0.0.1:6379> get name
"panlifu"
127.0.0.1:6379> get age
"18"
msetnx key value [key value] 同時(shí)設(shè)置一個(gè)或者多個(gè)key-value對(duì),當(dāng)且僅當(dāng)所有給定key都不存在
127.0.0.1:6379> msetnx sex boy height 120
(integer) 1
127.0.0.1:6379> get sex
"boy"
127.0.0.1:6379> get height
"120"
127.0.0.1:6379> msetnx name lt age 17
(integer) 0
127.0.0.1:6379> get name
"panlifu"
127.0.0.1:6379> get age
"18"
總結(jié):key前面有m一般都指 可以設(shè)置多個(gè) 鍵值對(duì)。 鍵后面帶nx 一般表示 只有當(dāng)key不存在時(shí),才能設(shè)置該key。
strlen key 返回 key 所儲(chǔ)存的字符串值的長(zhǎng)度
127.0.0.1:6379> get name
"panlifu"
127.0.0.1:6379> strlen name
(integer) 7
psetex key milliseconds value 這個(gè)命令和 SETEX 命令相似,但它以毫秒為單位設(shè)置 key 的生存時(shí)間,而不是像 SETEX 命令那樣,以秒為單位
127.0.0.1:6379> psetex name 1000 hehe
OK
127.0.0.1:6379> get name
"hehe"
127.0.0.1:6379> get name
(nil)
總結(jié):當(dāng)鍵以ex結(jié)尾時(shí),一般表示設(shè)置 key的過期時(shí)間,單位為秒。當(dāng)鍵前面有p且后面有ex時(shí),也表示設(shè)置key過期時(shí)間,單位為毫秒
incr key 將key中存儲(chǔ)的數(shù)字值增1
127.0.0.1:6379> set age 19
OK
127.0.0.1:6379> get age
"19"
127.0.0.1:6379> incr age
(integer) 20
127.0.0.1:6379> incr age
(integer) 21
127.0.0.1:6379> get age
"21"
127.0.0.1:6379> set age "19"
OK
127.0.0.1:6379> get age
"19"
127.0.0.1:6379> incr age
(integer) 20
127.0.0.1:6379> incr age
(integer) 21
127.0.0.1:6379> get age
"21"
127.0.0.1:6379> incr age
(integer) 22
127.0.0.1:6379> get age
"22"
127.0.0.1:6379> type age
string
總結(jié):string數(shù)據(jù)類型中的數(shù)據(jù),value的數(shù)據(jù)類型都是string類型。只要string全為數(shù)字,即可使用incr鍵
incrby key increment 將key所儲(chǔ)存的值加上給定的浮點(diǎn)增量值
127.0.0.1:6379> get age
"27"
127.0.0.1:6379> incrby age 3
(integer) 30
127.0.0.1:6379> get age
"30"
incrbyfloat key increment 將 key 所儲(chǔ)存的值加上給定的浮點(diǎn)增量值(increment) 。
127.0.0.1:6379> get age
"30"
127.0.0.1:6379> incrbyfloat age 1.5
"31.5"
127.0.0.1:6379> get age
"31.5"
decrby key decrement key 所儲(chǔ)存的值減去給定的減量值(decrement)
127.0.0.1:6379> incrbyfloat age -1.5
"30"
127.0.0.1:6379> decrby age 5
(integer) 25
127.0.0.1:6379> get age
"25"
decr key 將 key 中儲(chǔ)存的數(shù)字值減一。
append key value 果 key 已經(jīng)存在并且是一個(gè)字符串, APPEND 命令將指定的 value 追加到該 key 原來值(value)的末尾。
127.0.0.1:6379> get age
"25"
127.0.0.1:6379> append age hehe
(integer) 6
127.0.0.1:6379> get age
"25hehe"
分享名稱:Redis數(shù)據(jù)類型:String使用方法
當(dāng)前URL:http://fisionsoft.com.cn/article/dpgdogp.html


咨詢
建站咨詢
