我在表格(记录)中有一列(交易日期)。日期的当前格式为(YYYY MM DD HH MM SS)或与之接近的格式。我想将其转换为YY MM DD。如何为整个专栏做到这一点?
我尝试了alter命令。我已经尝试了一种变体:
http()
.client(todoClient)
.receive()
.response(HttpStatus.OK)
.messageType(MessageType.JSON)
.validate("$.id", "${todoId}")
.validate("$.title", "${todoName}")
.validate("$.description", "${todoDescription}");
但是只有错误。
答案 0 :(得分:0)
SQLite没有内置的日期类型,因此某些应用程序使用字符串或数字来存储日期。如果您的应用程序是使用字符串的应用程序之一,那么您有两种选择。
推荐:您可以在执行查询时使用SQLite日期函数之一(类似于您提供的SQL)转换字符串。
您可以将所有存储的日期字符串更新(使用SQL-UPDATE)为新的字符串格式。由于SQLite不支持将DATE作为列类型,因此ALTER TABLE不能用于更改列定义。请注意,如果您打算使用SQLite日期函数,SQLite会支持它列出的字符串格式(和一种数字格式)。
我不知道您的具体情况,但是既然您要这样:如果您想更改现有列中的字符串表示形式(假定它是您描述的格式的字符串),则可以尝试以下操作:
UPDATE records SET [transaction dates]=strftime('%Y-%m-%d', [transaction dates]);
顺便说一句:查询没有问题,因此也许您可以发送所收到的错误。以下查询对我来说效果很好。
SELECT strftime('%Y-%m-%d', 'now');
returned:
2019-07-13
有关SQLite中日期的更多信息,请参见以下内容。 https://sqlite.org/lang_datefunc.html