【问题标题】:iPhone Core Data fetching date manipulationsiPhone核心数据获取日期操作
【发布时间】:2010-11-12 06:10:19
【问题描述】:

我是 iPhone 开发的新手,我正在使用 Core Data 进行数据管理。我的托管对象有一个名为 creationDate 的属性,我需要有一个数据库中所有不同日期的列表。为了减少我设置的开销

[fetchRequest setPropertiesToFetch:[NSArray arrayWithObject:@"creationDate"]];

因为这就是我们所需要的。

我知道我可以设置 [fetchRequest setReturnsDistinctResults:YES];获取不同的日期,但是如何在获取请求中仅获取 NSDate 的日期部分?

谢谢,

托马斯

附:在 SQL 中,这看起来像:SELECT DISTINCT DATE(creationDate) FROM events;

【问题讨论】:

    标签: iphone objective-c core-data


    【解决方案1】:

    “NSDate 的日期部分”我认为您的意思是与时间不同?如果商店中的条目具有时间编码,则您不能直接表达这一点以获得不同的结果。您可以做的是将模型中的 creationDate 拆分为两个属性,日期和时间,并将所有日期标准化为一个时间(或者如果您不关心时间,则可以丢弃时间)。如果您实际上仍然需要它在那里的时间,但您可以纯粹针对日期进行查询。

    如果您的实体有自己的子类,您可以编写一个自定义设置器来获取数据,通过 NSDateComponents 提取组件,并通过 NSCalendar 将它们重新组合成日期。

    是的,看起来处理日期应该更简单,但需要绕道而行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-24
      • 1970-01-01
      相关资源
      最近更新 更多