更改此日期格式,这是在sqlite数据库12/10/11 to 12-10-11 (mm-dd-yy)我无法这样做,.I是一个新手在sqlite中的新手,并必须解析此值SELECT strftime('%d-%m-%Y',Date) from report,但我得到了null的sqlite数据库异常的值在mm-dd-yy中,所以我如何转换格式12/10/11 to 12-10-11 (mm-dd-yy) .Thanks提前.Really感谢帮助。
发布于 2012-12-24 22:47:29
简短的回答:
如果要将存储为"12/10/11"的文本字符串报告为"12-10-11",则应使用replace(X,Y,Z)函数将X中出现的Y替换为Z。因此:
SELECT replace('12/24/11','/','-');将返回:
12-10-11长长的答案:
首先,在SQLite中,日期实际上并不是一种适当的数据类型。它们存储为文本值、实数值或整数值。参见date and time datatype in SQLite。因此,这取决于您的日期是如何存储在数据库中的。
其次,您似乎在暗示您以"mm/dd/yy“格式存储了日期。您确实希望以date and time functions文档的“时间字符串”部分中列出的格式之一存储DateTime值。
因此,通常您应该以这些格式之一存储日期/时间值,当您从数据库中检索它时,使用NSDateFormatter将其转换为NSDate。当你想要在你的应用程序中显示日期值时,可以使用任何你想要的输出格式。
但是,如果您不关心日期是作为文本字符串存储的,并且在SQLite中不能有效地用作日期,那么只需将其视为普通的旧TEXT字符串,并使用TEXT函数(如replace(X,Y,Z) )将出现的"/"替换为"-",如上所述。
https://stackoverflow.com/questions/14021609
复制相似问题