如何根据分析中的出生日期和最小/最大年龄值过滤结果



我正在使用Parse iOS SDK。我想根据用户指定的年龄范围过滤。

我有两个表:

1st, tableuser 具有标题为birthdate的字段,带有String数据类型。

2nd, TableSettings 具有两个字段minAgemaxAge,这两个字段均为Number类型

我想从tableUser类中获取用户,该类别的年龄是根据出生日期领域计算出来的,属于tableSettings类指定的年龄范围。例如,如果minAge值为20,而maxAge值为25,那么我只想检索在此范围之间年龄的用户。

这可能吗?我将如何进行此类查询?

您的需求听起来并不平淡,而这种次优数据结构。我可能会选择云代码以隐藏应用程序所需的逻辑。该逻辑将是查询tableSettings并计算适用的日期范围。

现在您有了此范围,它仍然很难使用,因为您的另一个表使用日期的字符串表示形式,而不是真正的Date类型。这真的很糟糕。如果可以的话,您应该将日期更改为正确的类型,或者至少添加另一列具有正确表示日期的代表(但是您必须将它们保持同步)。

与日期合作,您可以在查询中添加特定的范围标准,生活很容易。

使用字符串的工作更加困难,因为您首先有一天,因此您甚至不能使用BEGINSWITH来过滤查询,然后处理内容。这确实是一个可怕的数据模型。因此,这基本上使您在所有执行弦的明确转换为日期的所有内容中进行分页,然后将其与范围进行比较。

如果您完全可以更改数据模型。即使您专门为此数据创建新类(表)并使用afterSave挂钩将它们保持同步。

最新更新