考虑以下数据库结构。我可以在一个查询中请求所有电影(movie1,movie2,.. etc)吗?如果是这样,怎么样?
"by_genre"
"comedy"
"by_lead"
"Jack Nicholson"
"movie1"
"Jim Carrey"
"movie3"
"Horror"
"by_lead"
"Jack Nicholson"
"movie2"
答案 0 :(得分:2)
问题的答案是否定的,如果没有读取所有的by_genre子节点并迭代它们,就无法查询所有电影。
但是...
更改结构将是一个选项
all_movies
movie_id_0
title: "The Shining"
year: "1980"
genre: "Horror"
lead: "Jack Nicholson"
movie_id_1
title: "One Flew Over the Cuckoo's Nest"
year: "1975"
genre: "Comedy"
lead: "Jack Nicholson"
movei_id_2
title: "Liar Liar"
year: "1997"
genre: "Comedy"
lead: "Jim Carrey"
这种结构非常灵活,因为您可以按年份,流派或主角查询所有电影,或只查看满足问题的所有电影。
您可以通过添加其他节点(例如
)来获得对数据的其他访问权限genre
comedy
movie_id_1: true
movie_id_2: true
horror
movie_id_0: true
可能还有其他要求,如果有,我们可以更新答案。