ในบทช่วยสอนนี้ เราจะเรียนรู้เกี่ยวกับวิธีรับสตริง Geohash ขององค์ประกอบอย่างน้อยหนึ่งค่าของค่า geospatial ที่จัดเก็บไว้ที่คีย์ สำหรับสิ่งนี้ เราจะใช้ Redis GEOHASH คำสั่ง
คำสั่ง GEOHASH
คำสั่งนี้ใช้เพื่อส่งคืนสตริง Geohash ที่ถูกต้องขององค์ประกอบที่ระบุตั้งแต่หนึ่งรายการขึ้นไปในค่า geospatial ที่จัดเก็บไว้ที่คีย์ ค่าเชิงพื้นที่จะแสดงด้วยค่าชุดที่จัดเรียง ซึ่งเติมโดยใช้คำสั่ง GEOADD
Redis แสดงถึงตำแหน่ง ( ลองจิจูด ละติจูด ) ขององค์ประกอบเชิงพื้นที่โดยใช้รูปแบบของเทคนิค Geohash โดยที่บิตละติจูดและลองจิจูดถูกสอดแทรกเพื่อสร้างจำนวนเต็ม 52 บิตที่ไม่ซ้ำกัน การเข้ารหัสยังแตกต่างกันเมื่อเทียบกับมาตรฐานเนื่องจากพิกัดขั้นต่ำและสูงสุดเริ่มต้นที่ใช้ระหว่างกระบวนการเข้ารหัสและถอดรหัสต่างกัน อย่างไรก็ตาม คำสั่งนี้จะคืนค่าสตริง Geohash มาตรฐาน
สตริง Geohash มาตรฐานมีคุณสมบัติดังต่อไปนี้ :-
- ประกอบด้วยอักขระ 11 ตัว
- มันเป็นไปได้ที่จะใช้ใน geohash.org
- สตริงที่มีคำนำหน้าคล้ายกันอยู่ใกล้ ๆ แต่สิ่งที่ตรงกันข้ามไม่เป็นความจริง เป็นไปได้ว่าสตริงที่มีคำนำหน้าต่างกันจะอยู่ใกล้กันด้วย
- สามารถย่อให้ลบอักขระออกจากด้านขวาได้ จะสูญเสียความแม่นยำแต่จะยังชี้ไปที่บริเวณเดิม
อาร์เรย์ของ nil จะถูกส่งคืนเมื่อไม่มีคีย์และข้อผิดพลาดจะถูกส่งคืนเมื่อมีคีย์ แต่ค่าที่เก็บไว้ที่คีย์ไม่ใช่ประเภทข้อมูลชุดที่จัดเรียงซึ่งเติมโดยใช้คำสั่ง GEOADD
ไวยากรณ์ของคำสั่ง redis GEOHASH มีดังนี้ :-
ไวยากรณ์ :-
redis host:post> GEOHASH <keyname> <member> [member]
ผลลัพธ์ :-
- (array) value, representing the list of Geohash string. - Error, if key exist and value stored at the key is not a sorted set populated using GEOADD command.
ตัวอย่าง :-
อ้างอิง :-
- เอกสารคำสั่ง GEOHASH
นั่นคือทั้งหมดสำหรับวิธีรับสตริง Geohash ขององค์ประกอบค่า geospatial ตั้งแต่หนึ่งรายการขึ้นไปที่จัดเก็บไว้ใน datastore redis หากคุณชอบโปรดแบ่งปันความคิดของคุณในส่วนความคิดเห็นและแบ่งปันกับผู้อื่นด้วย