首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HTML5 Web SQL数据库中的datetime排序

HTML5 Web SQL数据库中的datetime排序
EN

Stack Overflow用户
提问于 2012-09-27 19:50:15
回答 3查看 6.2K关注 0票数 4

我找不到解决我的问题的办法。

我有一个HTML5 Web SQL数据库,其中的表如下所示:

代码语言:javascript
复制
db.transaction(function(tx) {   
        tx.executeSql("CREATE TABLE IF NOT EXISTS todo " +
        "(todoId INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, " +
        "note VARCHAR(100) NOT NULL, " + 
        "state VARCHAR(100) NOT NULL, " + 
        "todoDate DATETIME NOT NULL)");
});

当我向这个数据库添加值(notation = dd-MM-yyyy)时,todoDate看起来像是作为字符串添加到数据库中。当我使用下面的查询从数据库中收集和排序一些todoDate值时,这些值的排序顺序是错误的:

代码语言:javascript
复制
sql = "select * FROM todo order by todoDate asc";

输出:

代码语言:javascript
复制
             todoId -     note        - state         - todoDate  
             3      -     blabla      - someinfo     - 01-01-2013
             1      -     blabla      - someinfo     - 22-09-2012
             2      -     blabla      - someinfo     - 25-10-2012

我想要得到以下订单:

代码语言:javascript
复制
             todoId -     note        - state         - todoDate  
             1      -     blabla      - someinfo     - 22-09-2012
             2      -     blabla      - someinfo     - 25-10-2012
             3      -     blabla      - someinfo     - 01-01-2013

我如何才能做到这一点?

我找到了函数str_to_date,但它不起作用,或者我做错了什么。

提前感谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-09-27 21:59:25

我找到了解决方案。

代码如下:

代码语言:javascript
复制
SELECT * FROM tablename ORDER by substr(dateColumn,7)||substr(dateColumn,4,2)||substr(dateColumn,1,2);
票数 0
EN

Stack Overflow用户

发布于 2012-11-15 04:22:55

HTML5 Web SQL数据库实际上是幕后的SQLite。SQLite doesn't have a DATETIME type。如果你向它们发送字符串,它会将它们存储为字符串。SQLite建议您使用ISO-8601规范格式(例如"2012-09-22"),以便进行预期的比较。SQLite提供了一组有用的日期时间函数,用于处理数据库中的日期时间值。参见here。或者,您可以存储毫秒,但我个人更喜欢存储字符串,因为它们是人类可读的,这有助于调试。

票数 5
EN

Stack Overflow用户

发布于 2012-09-27 20:15:16

代码语言:javascript
复制
Like that query you can fire :
select * from (select column1,...,convert(date,column) from table) as a order by dateColumn
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12620727

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档