Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách lấy kinh độ, vĩ độ (longitude, latitude) của một hoặc nhiều thành viên (member) của giá trị địa lý được lưu trữ tại một khóa. Để làm điều này, chúng ta sẽ sử dụng lệnh GEOPOS của Redis.
Lệnh GEOPOS
Lệnh này dùng để trả về kinh độ, vĩ độ của một hoặc nhiều thành viên được chỉ định của giá trị địa lý (Sorted Set) được lưu trữ tại một khóa. Khi tọa độ (kinh độ, vĩ độ) được chèn vào giá trị địa lý bằng lệnh GEOADD, chúng được chuyển đổi thành một geohash 52-bit. Vì vậy khi tọa độ được trả về, chúng có thể không chính xác hoàn toàn như lúc chèn nhưng có thể chứa sai số nhỏ. Nó trả về một mảng mà mỗi phần tử là một mảng 2 phần tử biểu diễn kinh độ và vĩ độ của từng thành viên được chỉ định.
Mảng rỗng được trả về khi khóa không tồn tại và lỗi được trả về khi khóa tồn tại nhưng giá trị lưu trữ tại khóa không phải là kiểu sorted set được populate bằng lệnh GEOADD.
Cú pháp:
redis host:port> GEOPOS <tên_khóa> <thành_viên> [thành_viên...]
Đầu ra:
- (mảng) phản hồi, đại diện cho kinh độ và vĩ độ của các thành viên được chỉ định. - Mảng rỗng, nếu khóa không tồn tại. - Lỗi, 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 được populate bằng GEOADD.
Ví dụ:

Tài liệu tham khảo:
- Tài liệu lệnh GEOPOS
Trên đây là tất cả về cách lấy kinh độ, vĩ độ của một hoặc nhiều thành viên của giá trị địa lý được lưu trữ trong kho dữ liệu Redis. Nếu bạn thấy hữu ích, hãy chia sẻ suy nghĩ của bạn trong phần bình luận và lan tỏa cho người khác nhé.