更新查询以从Access的“常规日期”字段中删除秒

时间:2019-07-16 17:30:10

标签: sql database ms-access sql-update

我正在尝试编写一个Access SQL更新查询以重新格式化表中的“ DateTime”列。当前,该列的格式为“常规日期”,格式为“ mm / dd / yy hh:nn:ss AM / PM”,但我想完全删除秒。在更新查询中重新格式化列的语法是什么?

我当时想可能是

UPDATE allPower.DateTime To Format([DateTime], "mm/dd/yy hh:nn AM/PM");

但是存在语法错误。我不确定自己在做什么错。任何帮助或指导,我们将不胜感激。

2 个答案:

答案 0 :(得分:2)

您有点出轨了。日期 value 不带有任何格式。格式仅用于显示

因此,如果您希望不显示几秒钟,请使用以下格式: mm / dd / yy hh:nn AM / PM

如果您希望更新存储的值以使其没有秒,则不要使用字符串处理,而要调整值,例如:

UPDATE 
    allPower
SET 
    [DateTime] = DateValue([DateTime]) + TimeSerial(Hour([DateTime]), Minute([DateTime]), 0)

答案 1 :(得分:0)

这是正确的语法:

UPDATE allPower
SET DateTime = Format([DateTime], "mm/dd/yy hh:nn AM/PM")

但是您不应该在数据库中执行此操作,因为数据库仅用于数据存储。如果您想格式化数据,则可以在客户端进行。