如何从swift中的日期开始按月和年执行等效的SQL提取/获取记录?
两个要求如下:
按月和年列出记录
显示年度和月份以下的交易。
编辑:我的意思是核心数据。在SQL"中改写了#34;等价物相当于SQL"澄清。
答案 0 :(得分:1)
CoreData会将日期存储为双精度数,这是NSDate
的内部格式。
如果您有一个小型数据库,只需将值存储为NSDate
并根据该值进行过滤。
但是,如果您有一个大型数据库,则可能需要对数据进行非规范化。
您可以存储另一个字段,例如“yyyymmdd”格式,它可以为您提供所需的大部分过滤功能。
对于更精细的控制,您还可以为年,月和日保留单独的属性。
如果您对大量数据进行大量搜索,您可能还希望将这些字段设置为索引。
请记住,CoreData在大多数数据库中都使用了SQLite,但它的行为特征却截然不同。
没有通用的“最佳”方式,因为它完全取决于您的数据以及您如何使用它。