LISTS Introduction

<< BITPOS LPUSH >>

소개

Lists는 key와 value가 일 대 다 관계입니다.
value는 입력된 순서대로 저장됩니다.
Lists는 주로 큐(Queue)와 스택(Stack)으로 사용됩니다.
큐(Queue)는 들어오는 데이터를 순서대로 처리할때 사용합니다.
스택(Stack)은 웹브라우져의 백버튼 처럼 주로 되돌아 갈때 사용합니다.

키(리스트)의 생성과 삭제

value가 저장되면 키(리스트)는 생성됩니다. 키에 value가 하나도 없으면 키는 삭제됩니다.
즉, 키(리스트)의 생성과 삭제를 위한 별도의 작업은 필요없습니다.

명령어 요약

  • 저장: LPUSH, RPUSH, LINSERT, LPUSHX, RPUSHX
  • 꺼내옴: LPOP, RPOP, BLPOP, BRPOP
  • 꺼내옴+저장: RPOPLPUSH, BRPOPLPUSH
  • 조회: LRANGE, LINDEX, LLEN
  • 바꿈: LSET
  • 삭제: LREM, LTRIM

Lists 명령어 리스트

CommandsVersionSyntaxDescription
LPUSH1.0.0key value [value ...]왼쪽에서 리스트의 오른쪽에 데이터를 저장
RPOP1.0.0key리스트 오른쪽에서 데이터를 꺼내오고, 리스트에서는 삭제
LPOP1.0.0key리스트 왼쪽에서 데이터를 꺼내오고, 리스트에서는 삭제
RPUSH1.0.0key value [value ...]오른쪽에서 리스트의 왼쪽에 데이터를 저장
LRANGE1.0.0key start stop인덱스로 범위를 지정해서 리스트 조회
LLEN1.0.0key리스트에서 데이터의 총 갯수를 조회
LINDEX1.0.0key index인덱스로 특정 위치의 데이터를 조회
LSET1.0.0key index value인덱스로 특정 위치의 값을 바꿈
LREM1.0.0key count value값을 지정해서 삭제
LTRIM1.0.0key start stop인덱스로 지정한 범위 밖의 값들을 삭제
RPOPLPUSH1.2.0key src_key dest_keyRPOP + LPUSH
BLPOP2.0.0key [key ...] timeout리스트에 값이 없을 경우, 지정한 시간만큼 기다려서 값이 들어오면 LPOP 실행
BRPOP2.0.0key [key ...] timeout리스트에 값이 없을 경우, 지정한 시간만큼 기다려서 값이 들어오면 RPOP 실행
BRPOPLPUSH2.2.0src_key dest_key timeout리스트에 값이 없을 경우, 지정한 시간만큼 기다려서 값이 들어오면 RPOPLPUSH 실행
LINSERT2.2.0key BEFORE|AFTER pivot value지정한 값 앞/뒤에 새 값 저장
LPUSHX2.2.0key value기존에 리스트가 있을 경우에만 LPUSH 실행
RPUSHX2.2.0key value기존에 리스트가 있을 경우에만 RPUSH 실행

Total : 17


Redis Internal : LIST 내부 데이터 구조



명령을 실습해 보시려면 여기를 클릭해서 Redis Web Client 를 실행하세요.


<< BITPOS LISTS Introduction LPUSH >>

질문하거나 댓글을 보려면 클릭하세요.  댓글수 :    조회수 :

Email 답글이 올라오면 이메일로 알려드리겠습니다.