Sử dụng truy vấn không gian địa lý
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Bạn có thể thực hiện các truy vấn không gian địa lý trong Cloud Firestore để tạo các dịch vụ nhận biết vị trí. Ví dụ: bạn có thể tìm khoảng cách giữa người dùng và các địa điểm yêu thích ở gần, sắp xếp các địa điểm đó từ gần nhất đến xa nhất.
Yêu cầu đối với phiên bản
Tính năng truy vấn không gian địa lý yêu cầu phải có cơ sở dữ liệu Firestore Enterprise Edition.
Trước khi bắt đầu
Để thực hiện một truy vấn không gian địa lý, trước tiên, bạn phải tạo chỉ mục không gian địa lý cho các trường mà bạn cần tìm kiếm.
Chạy truy vấn không gian địa lý
Để thực hiện một truy vấn không gian địa lý, hãy sử dụng biểu thức geoDistance trong tham số query của giai đoạn search(...).
Chỉ hỗ trợ toán tử nhỏ hơn hoặc bằng (<=). Khoảng cách được đo bằng mét.
Ví dụ: truy vấn sau đây sẽ tìm tất cả nhà hàng trong phạm vi 1.000 mét tính từ điểm địa lý được liệt kê.
Web
firestore.pipeline().collection('restaurants').search({query:field('location').geoDistance(newGeoPoint(38.989177,-107.065076)).lessThan(1000/* m */)});
firestore.pipeline().collection('restaurants').search({query:field('location').geoDistance(newGeoPoint(38.989177,-107.065076)).lessThan(1000/* m */)});
[[["Dễ hiểu","easyToUnderstand","thumb-up"],["Giúp tôi giải quyết được vấn đề","solvedMyProblem","thumb-up"],["Khác","otherUp","thumb-up"]],[["Thiếu thông tin tôi cần","missingTheInformationINeed","thumb-down"],["Quá phức tạp/quá nhiều bước","tooComplicatedTooManySteps","thumb-down"],["Đã lỗi thời","outOfDate","thumb-down"],["Vấn đề về bản dịch","translationIssue","thumb-down"],["Vấn đề về mẫu/mã","samplesCodeIssue","thumb-down"],["Khác","otherDown","thumb-down"]],["Cập nhật lần gần đây nhất: 2026-06-11 UTC."],[],[]]