Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách lấy số lượng phần tử của giá trị sorted set có điểm số (score) nằm trong một phạm vi cụ thể. Để làm điều này, chúng ta sẽ sử dụng lệnh Redis ZCOUNT.
Lệnh ZCOUNT
Lệnh này trả về số lượng phần tử của giá trị sorted set, có điểm số lớn hơn hoặc bằng min (khép kín) và nhỏ hơn hoặc bằng max (khép kín) được truyền làm đối số.
Mặc định min và max là khoảng khép kín (inclusive) nhưng có thể chỉ định chúng là khoảng mở (exclusive) bằng cách thêm tiền tố ký tự (. Ví dụ :-
ZCOUNT zset (1 5
Sẽ trả về số phần tử với 1 < score <= 5 trong khi:
ZCOUNT zset (5 (10
Sẽ trả về số phần tử với 5 < score < 10 (5 và 10 bị loại trừ).
Đối số min và max có thể là -inf (vô cực âm) và +inf (vô cực dương) để bạn không cần biết điểm số cao nhất hoặc thấp nhất trong sorted set để lấy tất cả phần tử từ hoặc đến một phạm vi điểm số nhất định.
Lỗi được trả về, nếu khóa tồn tại nhưng giá trị lưu trữ tại khóa không phải là kiểu dữ liệu sorted set. Cú pháp của lệnh Redis ZCOUNT như sau :-
Cú pháp :-
redis host:port> ZCOUNT <keyname> <min> <max>
Đầu ra :-
- (integer) reply, đại diện cho số phần tử trong phạm vi điểm số chỉ định. - Error, nếu khóa tồn tại và giá trị lưu trữ tại khóa không phải là sorted set.
Ví dụ :-

Tham khảo :-
- ZCOUNT Command Docs
Đó là tất cả về cách lấy số lượng phần tử của giá trị sorted set theo phạm vi điểm số. Nếu bạn thích, hãy chia sẻ suy nghĩ trong phần bình luận và chia sẻ với người khác.