如何插入日期时间列减去秒数?
Posted
技术标签:
【中文标题】如何插入日期时间列减去秒数?【英文标题】:How do I insert into a datetime column minus the seconds? 【发布时间】:2020-03-29 09:22:46 【问题描述】:所以我正在开发一个 c# 项目,该项目在具有日期时间列的表中创建行,然后提取该列的自动生成的 ID。我提取 ID 的方法是通过下面的代码,问题是执行第一个查询所需的长度,然后第二个查询超过 1 秒,所以我最终得到空行。那么如何插入或选择减去秒数的行呢?
INSERT INTO transactionlog(transactionDate) VALUES(NOW())
然后立即这样做
SELECT transactionID,transactionDate FROM transactionlog WHERE transactionDate=NOW();
【问题讨论】:
【参考方案1】:NOW()
为您提供它包含的语句的日期/时间开始。虽然可以保证同一查询中的多个调用返回相同的值,但这并不是真正的accross 查询。
要获取插入期间生成的自动递增值,您可以改用LAST_INSERT_ID()
:
INSERT INTO transactionlog(transactionDate) VALUES(NOW());
SELECT LAST_INSERT_ID();
【讨论】:
【参考方案2】:你可以利用mysql的DATE_FORMAT()函数来控制格式化。
SELECT transactionID,transactionDate FROM transactionlog WHERE transactionDate=DATE_FORMAT(NOW(), '%c/%e/%Y %H:%i');
您可以在这里查看:https://www.w3resource.com/mysql/date-and-time-functions/mysql-date_format-function.php
如果你想使用格式说明符
【讨论】:
以上是关于如何插入日期时间列减去秒数?的主要内容,如果未能解决你的问题,请参考以下文章