Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Redis

Redis ZINTERSTORE – วิธีดำเนินการตัดกันของค่าชุดที่เรียงลำดับ

ในบทช่วยสอนนี้ เราจะเรียนรู้เกี่ยวกับวิธีการดำเนินการทางแยกบนค่าชุดที่จัดเรียงตั้งแต่สองชุดขึ้นไปที่จัดเก็บในที่เก็บข้อมูล redis โดยใช้ redis ZINTERSTORE คำสั่ง

จุดตัดของเซต:

ในทฤษฎีเซต จุดตัดของเซตตั้งแต่สองเซตขึ้นไปคือเซตที่มีองค์ประกอบที่เหมือนกันกับเซตทั้งหมด ตัวอย่างเช่น :

A = {1, 2, 3, 4, 5}
B = {4, 5, 6, 7, 8, 9}

Intersection of A & B :-
A ∩ B = {4, 5}

Redis ZINTERSTORE – วิธีดำเนินการตัดกันของค่าชุดที่เรียงลำดับ

คำสั่ง ZINTERSTORE :-

คำสั่งนี้ดำเนินการตัดกันของชุดที่เรียงลำดับที่ระบุตั้งแต่สองชุดขึ้นไป และส่งกลับค่าชุดที่จัดเรียงใหม่ซึ่งจัดเก็บไว้ที่คีย์ที่ระบุ ชุดการเรียงลำดับที่ไม่มีอยู่จริงถือเป็นชุดการเรียงลำดับที่ว่างเปล่า ข้อผิดพลาดถูกส่งกลับ หากมีคีย์แต่ค่าที่เก็บไว้ที่คีย์ไม่ใช่ชุดที่จัดเรียง ไวยากรณ์ของคำสั่ง redis ZINTERSTORE มีดังนี้ :-

ไวยากรณ์ :-

redis host:post> ZINTERSTORE <destination> numkeys <keyName> [<keyName>] [WEIGHTS weight [weight]] [AGGREGATE SUM|MIN|MAX]

ผลลัพธ์ :-

- (array) reply, containing elements resulting from the intersection operation.
- Error, if key exist and value stored at the key is not a sorted set.

แป้นตัวเลข คือจำนวนของคีย์อินพุตที่มีค่าชุดที่เรียงลำดับซึ่งดำเนินการตัดกัน จำเป็นต้องส่ง numkeys อาร์กิวเมนต์ก่อนส่งคีย์อินพุตและอาร์กิวเมนต์อื่นๆ ผลลัพธ์จะถูกเก็บไว้ในชุดการเรียงลำดับใหม่ที่ ปลายทาง กุญแจ. หากมีคีย์ปลายทางอยู่แล้ว จะถูกเขียนทับ

น้ำหนัก สามารถใช้ตัวเลือกเพื่อระบุปัจจัยการคูณสำหรับชุดการเรียงลำดับอินพุตแต่ละชุด ซึ่งหมายความว่าคะแนนของทุกองค์ประกอบในชุดที่จัดเรียงอินพุตทั้งหมดจะถูกคูณด้วยปัจจัยนี้ก่อนที่จะส่งผ่านไปยังฟังก์ชันการรวม เมื่อ น้ำหนัก ไม่ผ่านตัวประกอบการคูณจะถูกนำมาเป็น 1

รวม สามารถใช้ตัวเลือกเพื่อระบุวิธีการรวมผลลัพธ์ของทางแยก ค่าเริ่มต้นคือ SUM ซึ่งหมายความว่าคะแนนขององค์ประกอบจะรวมอยู่ในชุดที่จัดเรียงข้อมูลเข้าทั้งหมดที่มีอยู่ เมื่อตั้งค่าตัวเลือกนี้เป็น MIN หรือ MAX ชุดผลลัพธ์จะมีคะแนนต่ำสุดหรือสูงสุดขององค์ประกอบในชุดที่จัดเรียงอินพุตที่มีอยู่

ตัวอย่าง :-

Redis ZINTERSTORE – วิธีดำเนินการตัดกันของค่าชุดที่เรียงลำดับ

ข้อมูลอ้างอิง :-

  1. เอกสารคำสั่ง ZINTERSTORE

นั่นคือทั้งหมดสำหรับวิธีดำเนินการตัดกับค่าชุดที่เรียงลำดับตั้งแต่สองชุดขึ้นไปที่จัดเก็บไว้ใน datastore redis หากคุณชอบโปรดแบ่งปันความคิดของคุณในส่วนความคิดเห็นและแบ่งปันกับผู้อื่นด้วย