이 글에서는 Redis에서 특정 키에 저장된 해시(hash) 값에 포함된 모든 필드와 값(field/value) 쌍을 한 번에 가져오는 방법을 알아봅니다. 이를 위해 사용하는 것이 바로 HGETALL 명령어입니다.
HGETALL 명령어란?
HGETALL은 지정한 키에 저장된 해시 값 안의 모든 필드와 해당 값들을 전부 반환하는 명령어입니다. 개별 필드를 하나씩 조회하는 HGET이나 HMGET과 달리, 해시 전체를 한 번에 읽어올 수 있어 데이터를 통째로 확인할 때 유용합니다.
동작 방식
- 키가 존재하면 해시 내 모든 필드와 값을 순서대로 반환합니다.
- 키가 존재하지 않으면 빈 리스트(empty list)를 반환하며, 에러가 발생하지 않습니다.
- 키는 존재하지만 저장된 값이 해시 타입이 아니라면 오류(error)를 반환합니다.
기본 문법
redis host:port> HGETALL <keyname>
반환값
- (array) reply : 해시에 포함된 필드와 값들의 목록 - 빈 리스트 : 키가 존재하지 않는 경우 - 오류 : 키는 존재하지만 값이 해시 타입이 아닌 경우
사용 예제
아래 예제는 실제 redis-cli 환경에서 HSET으로 해시 데이터를 저장한 뒤, HGETALL로 전체 필드-값 쌍을 조회하는 과정을 보여줍니다.

참고 자료
- Redis 공식 문서 – HGETALL Command Docs
마무리
지금까지 Redis 데이터 스토어에 저장된 해시 값에서 모든 필드-값 쌍을 가져오는 HGETALL 명령어의 사용법을 살펴보았습니다. 대량의 해시 데이터를 다룰 때는 성능에 유의하고, 필요하다면 HSCAN을 활용해 점진적으로 조회하는 것도 좋은 방법입니다. 이 글이 도움이 되었다면 의견을 댓글로 남겨주시고, 주변에도 공유해 주세요!
<- Hash Commands 목록으로 돌아가기