ในบทเรียนนี้ เราจะเรียนรู้วิธีการลบสมาชิกของ Sorted Set ที่มี Score อยู่ในช่วงเฉพาะ โดยใช้คำสั่ง Redis ZREMRANGEBYSCORE
คำสั่ง ZREMRANGEBYSCORE
คำสั่งนี้ลบสมาชิกทั้งหมดของค่า Sorted Set ที่ Score ของมันมากกว่าหรือเท่ากับ min (Inclusive) และน้อยกว่าหรือเท่ากับ max (Inclusive) ที่ส่งผ่านเป็นอาร์กิวเมนต์
โดยค่าเริ่มต้น min และ max เป็นช่วงปิด (Inclusive) แต่สามารถระบุเป็นช่วงเปิด (Exclusive) ได้โดยการขึ้นต้นด้วยตัวอักษร ( ตัวอย่างเช่น:-
ZREMRANGEBYSCORE set (1 5
จะลบสมาชิกทั้งหมดที่ 1 < score <= 5 ในขณะที่:
ZREMRANGEBYSCORE set (5 (10
จะลบสมาชิกทั้งหมดที่ 5 < score < 10 (ไม่นับ 5 และ 10)
อาร์กิวเมนต์ min และ max สามารถเป็น -inf (ลบอนันต์) และ +inf (บวกอนันต์) ได้ เพื่อที่คุณจะไม่ต้องรู้ Score สูงสุดหรือต่ำสุดใน Sorted Set
จะส่งคืน Error หาก Key มีอยู่แต่ค่าที่จัดเก็บที่ Key ไม่ใช่ชนิดข้อมูล Sorted Set ไวยากรณ์ของคำสั่ง Redis ZREMRANGEBYSCORE มีดังนี้:-
ไวยากรณ์ (Syntax) :-
redis host:port> ZREMRANGEBYSCORE <keyname> <min> <max>
ผลลัพธ์ (Output) :-
- (integer) reply, แสดงจำนวนสมาชิกที่ถูกลบ - 0, หาก Key ไม่มีอยู่ - Error, หาก Key มีอยู่และค่าที่จัดเก็บที่ Key ไม่ใช่ Sorted Set
ตัวอย่าง (Example) :-

อ้างอิง (References) :-
- ZREMRANGEBYSCORE Command Docs
ขอจบบทเรียนเรื่องวิธีลบสมาชิกของ Sorted Set ที่มี Score อยู่ในช่วงเฉพาะ หากชอบ กรุณาแชร์ความคิดเห็นในส่วนความคิดเห็นและแชร์ให้คนอื่นๆ ด้วยนะครับ