将日期时间字符串转换为日期

Convert date time string to date

MS Access Table January2015 的 txndate 字段包含字符串“2015-01-01 11:48:00”

字段类型为文本。

字符串需要转换为 date/time 即它应该以相同的格式出现但作为时间。

运行 这个查询: SELECT 格式(日期值(txndate),"dd-mm-yyyy hh:mm:ss")从 2015 年 1 月开始;

给出输出: 2015 年 1 月 1 日 00:00:00 (时间部分被忽略)。

我该如何解决这个问题?

SELECT Format(DateValue(txndate),"dd-mm-yyyy") & " " & Format(TimeValue(txndate),"hh:nn:ss") AS Expr1 从 2015 年 1 月开始;

你可以用一个 Format() 而不是两个来获得你想要的结果。

SELECT Format(CDate(txndate),"dd-mm-yyyy hh:nn:ss") AS Expr1
FROM January2015;

实际上 Format() 将接受您的 ymd 日期字符串,而无需先将其转换为 Date/Time,因此您可以消除 CDate()如果你愿意。

SELECT Format(txndate,"dd-mm-yyyy hh:nn:ss") AS Expr1
FROM January2015;

但是请注意,该计算字段的数据类型将是文本,而不是 Date/Time,因为 Format() 总是 returns 字符串。