我在RDBMS中有两个表
表格结构
表:tblUser 用户身份 AvatarURL
表:tblSchedule
情景
tblUser表中共有100个用户,其中20个用户 今天的日程安排。 10个用户是上午10点到下午12点。 2个用户 下午1点到下午4点,休息时间是下午4点到晚上11:59。我想要显示10 (基于pagging重置)来自solr核心的用户(应该有 两个不同的核心一个用于tblUser,第二个用于tblSchedule,这个我 必须做以后的参考)基于两个记录显示 tblSchedule按时间重置将显示哪些不在 tblSchedule。再次在第二页上显示前两个记录 基于时间重置将根据其授权显示。其他 单词顺序应按计划和UserId完成。我想写 单个查询,在这两个核心的其他字段上使用分面。
答案 0 :(得分:2)
Solr数据结构应该针对搜索进行优化,最终可能看起来不像原始数据结构。如果差异非常大,您最终可能只是从Solr中获取ID并将它们与原始数据库匹配以获取对象/关系。
在您的情况下,可能值得将用户信息保留在Solr之外,并专注于编码和检索正确的计划文档。
此外,使用最新的Solr,DateRangeField可能是保持开始日期范围的有用方法。