หน้านี้อธิบายประเภทข้อมูลที่ Cloud Firestore รองรับ
ชนิดข้อมูล
ตารางต่อไปนี้แสดงรายการประเภทข้อมูลที่รองรับโดย Cloud Firestore นอกจากนี้ยังอธิบายลำดับการจัดเรียงที่ใช้ในการเปรียบเทียบค่าประเภทเดียวกัน:
ประเภทข้อมูล | เรียงลำดับ | หมายเหตุ |
---|---|---|
Array | ตามค่าองค์ประกอบ | อาร์เรย์ไม่สามารถมีค่าอาร์เรย์อื่นเป็นหนึ่งในองค์ประกอบ ภายในอาร์เรย์ องค์ประกอบจะรักษาตำแหน่งที่ได้รับมอบหมาย เมื่อจัดเรียงอาร์เรย์ตั้งแต่สองอาร์เรย์ขึ้นไป อาร์เรย์จะถูกจัดเรียงตามค่าขององค์ประกอบ เมื่อเปรียบเทียบสองอาร์เรย์ องค์ประกอบแรกของแต่ละอาร์เรย์จะถูกเปรียบเทียบ หากองค์ประกอบแรกเท่ากัน องค์ประกอบที่สองจะถูกเปรียบเทียบไปเรื่อยๆ จนกว่าจะพบความแตกต่าง หากอาร์เรย์ไม่มีองค์ประกอบที่จะเปรียบเทียบแต่มีค่าเท่ากับจุดนั้น อาร์เรย์ที่สั้นกว่าจะถูกจัดเรียงก่อนอาร์เรย์ที่ยาวกว่า ตัวอย่างเช่น |
บูลีน | false < true | — |
ไบต์ | ลำดับไบต์ | สูงสุด 1,048,487 ไบต์ (1 MiB - 89 ไบต์) เฉพาะ 1,500 ไบต์แรกเท่านั้นที่จะถูกพิจารณาโดยข้อความค้นหา |
วันและเวลา | ตามลำดับเวลา | เมื่อจัดเก็บไว้ใน Cloud Firestore แม่นยำเพียงไมโครวินาที ความแม่นยำเพิ่มเติมจะถูกปัดเศษลง |
เลขทศนิยม | ตัวเลข | ความแม่นยำสองเท่า 64 บิต, IEEE 754 |
จุดทางภูมิศาสตร์ | ตามละติจูด แล้วก็ลองจิจูด | ในขณะนี้ เราไม่แนะนำให้ใช้ข้อมูลประเภทนี้เนื่องจากข้อจำกัดในการค้นหา โดยทั่วไป จะดีกว่าถ้าเก็บละติจูดและลองจิจูดเป็นช่องตัวเลขแยกกัน หากแอปของคุณต้องการ geoquery ตามระยะทางอย่างง่าย โปรดดู Geo Queries |
จำนวนเต็ม | ตัวเลข | 64-บิต, ลงนาม |
แผนที่ | โดยคีย์แล้วตามค่า | แสดงถึงวัตถุที่ฝังอยู่ภายในเอกสาร เมื่อทำดัชนีแล้ว คุณสามารถสืบค้นข้อมูลในช่องย่อยได้ หากคุณยกเว้นค่านี้จากการจัดทำดัชนี ฟิลด์ย่อยทั้งหมดก็จะถูกแยกออกจากการทำดัชนีด้วย การเรียงลำดับคีย์จะถูกจัดเรียงอยู่เสมอ ตัวอย่างเช่น หากคุณเขียน ฟิลด์แผนที่จะจัดเรียงตามคีย์และเปรียบเทียบโดยคู่คีย์-ค่า โดยขั้นแรกให้เปรียบเทียบคีย์แล้วตามด้วยค่า หากคู่คีย์-ค่าแรกเท่ากัน คู่คีย์-ค่าถัดไปจะถูกเปรียบเทียบ เป็นต้น หากสองแผนที่เริ่มต้นด้วยคู่คีย์-ค่าเดียวกัน จะพิจารณาความยาวของแผนที่ ตัวอย่างเช่น แผนที่ต่อไปนี้อยู่ในลำดับจากน้อยไปมาก: |
โมฆะ | ไม่มี | — |
อ้างอิง | ตามองค์ประกอบเส้นทาง (คอลเลกชัน ID เอกสาร คอลเลกชัน ID เอกสาร...) | ตัวอย่างเช่น projects/[PROJECT_ID]/databases/[DATABASE_ID]/documents/[DOCUMENT_PATH] |
สตริงข้อความ | ลำดับไบต์ที่เข้ารหัส UTF-8 | สูงสุด 1,048,487 ไบต์ (1 MiB - 89 ไบต์) เฉพาะ 1,500 ไบต์แรกของการแสดง UTF-8 เท่านั้นที่จะถูกพิจารณาโดยการสืบค้น |
มูลค่าการสั่งซื้อประเภท
เมื่อการสืบค้นเกี่ยวข้องกับฟิลด์ที่มีค่าของประเภทผสม Cloud Firestore จะใช้การเรียงลำดับแบบกำหนดตามการแทนค่าภายใน รายการต่อไปนี้แสดงลำดับ:
- ค่าว่าง
- ค่าบูลีน
- ค่าจำนวนเต็มและทศนิยม จัดเรียงตามลำดับตัวเลข
- ค่าวันที่
- ค่าสตริงข้อความ
- ค่าไบต์
- ข้อมูลอ้างอิง Cloud Firestore
- ค่าจุดทางภูมิศาสตร์
- ค่าอาร์เรย์
- แผนที่ค่า