【问题标题】:T-Sql date format for seconds since last epoch / formatting for sqlite input自上一个纪元以来的秒数的 T-Sql 日期格式/sqlite 输入的格式
【发布时间】:2010-09-05 21:18:48
【问题描述】:

我猜它应该是这样的:

CONVERT(CHAR(24), lastModified, 101)

但是我不确定第三个参数的正确值。

谢谢!


好吧,我正在尝试编写一个脚本来将我的 sql server db 复制到一个 sqlite 文件,该文件被下载到一个 air 应用程序,然后将数据同步到另一个 sqlite 文件。我在约会方面遇到了很多麻烦。如果我在空中选择一个日期并尝试插入它,它会失败,因为它的格式不正确......即使它是一个有效的开始日期。我想我会尝试尝试使用 unix 时间,因为这是迄今为止唯一有效的方法。我正在考虑将它们保留为 varchar,因为无论如何我都不按它们排序。

【问题讨论】:

    标签: tsql sqlite date


    【解决方案1】:

    定义“最后一个纪元”。这接近了吗?

    选择 Cast(lastModified As Integer)

    【讨论】:

      【解决方案2】:

      最后一个纪元是 1970 GMT?

      SELECT DATEDIFF(s,'19700101 05:00:00:000',lastModified)
      

      另见Epoch Date

      【讨论】:

        【解决方案3】:

        如果您将它们存储为 varchar,请将它们存储为 YYYYMMDD。这样,您以后可以根据需要对它们进行排序。

        【讨论】:

          【解决方案4】:

          SQL 服务器只有 2 种故障安全日期格式

          ISO = YYYYMMDD,运行这个看看

            select convert(varchar(10),getdate(),112)
          

          ISO8601 = yyyy-mm-dd Thh:mm:ss:mmm(无空格) 运行这个看看

          select convert(varchar(30),getdate(),126)
          

          要了解有关日期如何存储在 SQL Server 中的更多信息,我写了How Are Dates Stored In SQL Server?

          【讨论】:

            【解决方案5】:

            我最终在 MS SQL 中使用了格式 120:

            convert(char(24), lastModified, 120)
            

            每次我需要在 SQLite 中选择一个日期以用于非显示目的时:

            strftime(\"%Y-%m-%d %H:%M:%S\", dateModified) as dateModified
            

            现在我只需要一种可读/友好的方式来向用户显示日期!

            编辑:接受答案交给谁告诉我如何从 sqlite 中很好地显示日期;p

            【讨论】:

            • 接受挑战:不太清楚你所说的“很好地展示”是什么意思,所以我猜你的意思是......
            • 不太清楚我需要这个做什么,因为它是从 2 年半前开始的
            【解决方案6】:

            sqlite> 选择日期时间();
            2011-01-27 19:32:57

            sqlite> select strftime('%Y-%m-%d %H:%M:%S','now');
            2011-01-27 19:33:57

            参考:
            (日期时间函数)[http://sqlite.org/lang_datefunc.html]

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2019-11-11
              • 2012-01-31
              • 1970-01-01
              • 2017-10-02
              • 1970-01-01
              • 2021-07-03
              • 1970-01-01
              相关资源
              最近更新 更多