2017-03-19 19 views
5

Đây là cấu trúc cơ sở dữ liệu căn cứ hỏa lực của tôi:Cách sử dụng ký tự đại diện trong Firebase?

ft-records 
    [email protected]_com 
    2013-01-01 00:00:00 GMT 
     addedByUser: "[email protected]" 
     notes: "Boooo" 
     time: "2013-01-01 00:00:00 GMT" 
    2013-01-02 10:00:00 GMT 
     addedByUser: "[email protected]" 
     notes: "Yeaah" 
     time: "2013-01-02 10:00:00 GMT" 
    [email protected]_com 
    2013-01-01 03:00:00 GMT 
     addedByUser: "[email protected]" 
     notes: "Ok" 
     time: "2013-01-01 03:00:00 GMT" 

Tôi có thể truy vấn dữ liệu này như thế này cho người sử dụng chứng thực ví dụ userX @ gmail_com

let userRecords = self.ref.child(self.user.email.replacingOccurrences(of: ".", with: "_", options: .literal, range: nil)) 

userRecords.queryOrdered(byChild: "time").queryStarting(atValue: startOfDayDateString).queryEnding(atValue:endOfDayDateString).observe(FIRDataEventType.value, with: { snapshot in ... }) 

Nhưng nếu tôi muốn truy vấn tất cả ghi chú từ tất cả người dùng cho một ngày cụ thể, làm thế nào để đạt được điều này?

Tôi cần bằng cách nào đó một ký tự đại diện để đọc tất cả trẻ em từ gốc và sau đó truy vấn theo thời gian của mỗi đứa trẻ. Nhưng tôi không chắc chắn làm thế nào để làm điều đó.

Tôi có thể làm điều gì đó như thế này không?

let ref = FIRDatabase.database().reference(withPath: "ft-records/*") 

Trả lời

0

Bạn muốn sử dụng truy vấn cơ sở dữ liệu Firebase cho điều đó.

let ref = FIRDatabase.database().reference(withPath: "ft-records") 
let query =ref.queryOrdered(byChild: "time").queryStarting(atValue: "2013-01-02 00:00:00 GMT").queryEnding(atValue: "2013-01-02 23:59:59 GMT") 

Để biết thêm thông tin, xem Firebase documentation on filtering dataFirebase codelab for iOS.

+0

Tôi không hiểu. Con của 'ft-records' là' userX @ gmail_com' và 'userY @ gmail_com'. Không có 'thời gian' để truy vấn. Tui bỏ lỡ điều gì vậy? – Houman

+0

Ah phải, có một mức độ bổ sung trong đó. Bạn không thể truy vấn qua nhiều cấp độ động. –

Các vấn đề liên quan