ในบทเรียนนี้ เราจะเรียนรู้วิธีการดึงสมาชิกแบบสุ่ม 1 รายการหรือหลายรายการ จากค่า Set ที่จัดเก็บที่ Key โดยใช้คำสั่ง SRANDMEMBER ใน redis-cli ไวยากรณ์ของคำสั่ง Redis SRANDMEMBER มีดังนี้ :-
ไวยากรณ์ (Syntax) :-
redis host:port> SRANDMEMBER <key name> [count]
ผลลัพธ์ (Output) :-
-(string value) หาก Key มีอยู่และไม่มีอาร์กิวเมนต์ Count -(nil), หาก Key ไม่มีอยู่และไม่มีอาร์กิวเมนต์ Count -(array value) หาก Key มีอยู่และมีอาร์กิวเมนต์ Count -(empty array), หาก Key ไม่มีอยู่และมีอาร์กิวเมนต์ Count -(error), หาก Key มีอยู่และค่าที่จัดเก็บที่ Key ไม่ใช่ Set
เมื่อเรียกคำสั่ง SRANDMEMBER ด้วยแค่ Key argument จะส่งคืนสมาชิกแบบสุ่ม 1 รายการจากค่า Set แต่เมื่อเรียกด้วย Key และ Count ทั้งคู่ ผลลัพธ์ 3 แบบสามารถส่งคืนได้ ขึ้นอยู่กับค่า count ที่ส่งผ่าน:
- ถ้า count > 0 และ count <= ขนาดของ Set ส่งคืน Array ของ count สมาชิกที่ไม่ซ้ำกัน
- ถ้า count > 0 และ count > ขนาดของ Set ส่งคืน Array ที่มีสมาชิกทั้งหมดของ Set
- ถ้า count < 0 ส่งคืน Array ของ count สมาชิก ที่ Array อาจมีสมาชิกซ้ำกันได้
ตัวอย่าง (Example) :-

อ้างอิง (References) :-
- SRANDMEMBER Command Docs
ขอจบบทเรียนเรื่องวิธีดึงสมาชิกแบบสุ่ม 1 รายการหรือหลายรายการ จากค่า Set ที่จัดเก็บใน Redis Datastore หากชอบ กรุณาแชร์ความคิดเห็นในส่วนความคิดเห็นและแชร์ให้คนอื่นๆ ด้วยนะครับ