sqlite3中用于按月检索数据的查询是什么

时间:2011-12-28 04:33:31

标签: iphone date sqlite

我遇到了一个问题。我使用sqlite3来插入,保存和检索数据。我知道检索数据的查询,即

 SELECT * from tableName.

但是我为每个提醒保存了一个日期,我保存的格式是@“MMMM dd”,它保存为1月23日,3月14日等。它实际上是一个包含textfield的行。单击时会显示日期选择器,包括日期,月份和年份。但是在选择显示的日期格式之后会如上所述!

我已成功显示所有提醒视图中的所有提醒,使用查询分组:

SELECT * from tableName WHERE grp = 'Family'|'Office' etc...

但我有一个要求:每月查看我需要根据选择器视图中选择的行(月)显示月度提醒。我尝试了以下查询:

  SELECT * FROM tableName WHERE Date = 'January'

但它没有用,但是当我给Date ='1月17'时它会显示提醒,因为我已经保存了该日期的提醒。情况并非如此,因为我们不知道用户准确输入的日期。我已经通过了几个解决方案的链接。有些人提出了将日期保存为DATETIME的建议,但是当我使用它时,它显示无法创建表。现在当我删除应用程序frm模拟器并使其再次运行时,它被保存。以下3个答案中没有一个工作,请帮助我提出宝贵的建议,

任何人都可以建议我一个可以解决问题的查询,

提前致谢:)

4 个答案:

答案 0 :(得分:0)

我认为select * from tableName where Date like "<yourmonth>%",您可以使用选择器返回的值替换它。但老实说,将其存储为DATETIME会使这些类型的查询更容易(也许更快)。您必须删除现有表并创建一个类型为“DATETIME”的新表。

答案 1 :(得分:0)

SELECT * FROM tableName WHERE Date LIKE 'January%'

答案 2 :(得分:0)

从tablename中选择*,其中Date喜欢'&lt; month&gt;%',其中month是从datepicker中选择的月份值。

答案 3 :(得分:0)

我找到了检索数据的策略或与特定月份相对应的所有行。

  1. 首先将日期格式保存为“yyyy-MM-dd HH:mm:ss”

  2. 然后检索特定月份的数据

  3. 有关详细信息,请访问link

    干杯:)