redis Strings
개요
key 하나당 하나의 value를 가집니다.
key와 value의 Data Type은 문자, 숫자, 이미지등을 사용할 수 있습니다.
key와 value의 최대 길이는 512MB입니다.
명령어 요약
저장 :SET, MSET, SETNX, SETEX, MSETNX
SET :set key value 예)set stringK "가나 다라!!", stringK에 가나 다라!! data를 저장 합니다. 띄어쓰기를 할 때 큰따움표를 사용 합니다.
이미 존재하는 key 값을 set 하면 새로운 value로 대체 됩니다.
MSET :set key1 value1 key2 value2 예)mset stringA 아이 stringB 엠걸, 여러개의 데이터를 입력 합니다.
SETNX :setnx key value 예)setnx stringK 입력, stingk key가 존재하지 않을 경우에만 저장 됩니다. 성공시 1, 실패시 0을 리턴 합니다.
SETEX : setex key seconds value 예)setex stringk 5 5초후사라진다 , 지정한 시간 (seconds)후 데이터가 지워 집니다.
MSETNX :msetnx key value [key value ...] 예)mesetnx string1 값1 string2 value2 , 여러개의 데이터를 한번에 저장 합니다.
만약 keys 중 하나라도 이미 존재하는 key 라면 전체가 실패 합니다. 성공시 1, 실패시 0을 리턴 합니다.
조회 :GET, MGET, STRLEN, GETRANGE
GET : get key 예)get stingK , key의 value를 조회 합니다.
MGET :mget key [key ...] 예)mget string1 string2, 여러 key들의 데이터를 한번에 조회 합니다.
존재하지 않는 data는 null로 리턴 됩니다.
STRLEN :strlen key 예)strlen stringK , key의 value 바이트 수를 리턴 합니다. UTF-8 기준 Byte 수 입니다.
GETRANGE :getrange key start end 예)getrange stringK 0 3 , value의 일부 문자열을 조회 합니다.
문자열의 왼쪽부터 0부터 시작합니다. 음수의 경우 오른쪽 부터 -1부터 시작 합니다.
삭제 :DEL, PSETEX
DEL :del key [key...] 예)del stringK string1 , key 를 삭제 합니다. 존재하는 key들만 삭제 하며 삭제된 키의 숫자를 리턴합니다.
PSETEX :psetex key milliseconds value 예)psetex stringK 1000 삭제될예정, milliseconds 후 데이터가 삭제 됩니다.
업데이트 :APPEND, SETRANGE, INCR, DECR, INCRBY, DECRBY, INCRBYFLOAT
APPEND :append key value 예)append stringK "추가혹은생성" , 기존에 key 값이 있다면 추가 하고, 없는 경우 생성(set)하여 삽입 합니다.
SETRANGE :setrange key offset value 예)setrange stringK 3 "abcd" , 지저한 offset 위치부터 value를 over write 합니다.
offset은 0부터 시작합니다.
INCR : incr key 예) incr int_key , key의 value가 int형일 경우 값을 1 증가 시킵니다. 더해진 결과 값을 리턴 합니다.
key값이 존재 하지 않으면 0을 기준으로 1을 증가 시켜 삽입 합니다.
DECR : decr key 예)decr int_key, key의 value가 int형일 경우 값을 1 감소 시킵니다. 차감된 결과 값을 리턴 합니다.
key값이 존재 하지 않으면 0을 기준으로 -1을 감소 시켜 삽입 합니다.
INCRBY : incrby key increment(int) 예)incrby int_key 10, 지정한 숫자 만큼 값을 증가 시킵니다. 더해진 결과 값을 리턴합니다.
key값이 존재 하지 않으면 0을 기준으로 정해진 값 만큼 증가 시켜 삽입 합니다.
DECRBY :decrby key decrement(int) 예)decrby int_key 10, 지정한 숫자에 -1을 곱해 값을 더합니다.
지정된 값이 음수 이면 음수 * (-1)이 되어 값이 증가 합니다
INCRBYFLOAT :incrbyfloat key increment(int/float) 예)incrbyfloat float 10.0, 지정한 숫자 (정수/실수)만큼 증가 시키고, 결과 값을 리턴 합니다.
key값이 존재 하지 않으면 0을 기준으로 정해진 값 만큼 증가 시켜 삽입 합니다.
음수 입력도 가능하며, 음수를 입력하면 감소 처리 됩니다.
조회 후 저장 : GETSET
GETSET : getset key value 예)getset int_key 10, 현재 key값을 가져오고 입력된 value으로 치환 합니다.
비트 연산 : SETBIT, GETBIT, BITOP, BITCOUNT, BITPOS
SETBIT :setbit key offset value 예) setbit int_key 6 1, offset 은 0부터 시작하고 value 는 0/1만 사용 가능합니다.
offset 비트의 값을 치환 하며, 원래 가지고 있던 value를 리턴 합니다.
GETBIT :getbit key offset 예) getbit int_key 5, offset 비티의 값을 가져 옵니다. 범위 외의 bit를 지정하면 0을 리턴 합니다.
BITOP :bitop operation destkey key [key ...] 예)bitop and dkey key1 key2
key들을 operation 종류에 따른 bit연산을 하여 destkey에 삽입합니다.
operation의 종류는 AND, OR, XOR, NOT 이 있습니다.
BITCOUNT :bitcount key start end 예)bitcount key 1 2, 1과 2 바이트값중 1인 bit 수를 출력 합니다.
start end 값을 입력하지 않으면 전체 범위에서 1인 bit 수를 출력 합니다.
음수를 입력한 경우 -1, -2 순으로 마지막 바이트 부터 접근 합니다.
BITPOS : bitpos key bit [start [end]] , 지정한 bit의 자리수(위치)를 가져 옵니다. 위치는 0부터 0,1,2,... 의 값을 가져 옵니다.
bitpos key 1, key 의 1 bit 자리의 위치 = 1
bitpos key 1 2, key의 3byte 의 1 bit 자리의 위치 = 17, Byte는 0,1,2.. 의 값을 가집니다.
start end는 음수가 가능 하며, -1,-2,... 의 값을 가집니다.
'NoSQL > redis' 카테고리의 다른 글
Redis - 조회 명령어 정리 (0) | 2022.05.09 |
---|---|
Redis Lua Script를 활용 예 (0) | 2021.04.11 |
Redis 의 Lua Script 활용 (0) | 2021.04.11 |
Redis cluster (0) | 2021.04.11 |
redis Lists (0) | 2021.04.11 |
redis Sorted Sets (0) | 2021.04.11 |
redis Sets (0) | 2021.04.11 |
redis Hashes (0) | 2021.04.11 |