MySQL插入条件日期时间

MySQL插入条件日期时间,mysql,datetime,date,time,insert,Mysql,Datetime,Date,Time,Insert,我想知道是否可以在一个查询中插入基于特定日期/时间的记录,而无需先选择它 例如: 我只想在2分钟前没有记录时插入 这将如何实现 提前感谢使用以下语句,而不是插入到表\u名称值(1,'foobar'): 诀窍是:找到一个select语句,它返回一行,其中包含要插入的列,当且仅当该行应该被插入时—最后将insert放入它前面的table_name。注意表DUAL在MySQL和其他DBMS中是一个特殊的表。你能用一个foo数据的例子来回答吗?你把要插入的变量放在哪里?(VALUES())@John:要

我想知道是否可以在一个查询中插入基于特定日期/时间的记录,而无需先选择它

例如:

我只想在2分钟前没有记录时插入

这将如何实现


提前感谢

使用以下语句,而不是
插入到表\u名称值(1,'foobar')


诀窍是:找到一个select语句,它返回一行,其中包含要插入的列,当且仅当该行应该被插入时—最后将
insert放入它前面的table_name
。注意表
DUAL
在MySQL和其他DBMS中是一个特殊的表。

你能用一个foo数据的例子来回答吗?你把要插入的变量放在哪里?(VALUES())@John:要插入的值是
42
'foobar'
INSERT INTO foobar (foobar_id,display_name,ctime)
SELECT 42,'foobar',CURRENT_TIMESTAMP()
FROM DUAL
WHERE NOT EXISTS (
    SELECT 1
    FROM foobar
    WHERE mtime > CURRENT_TIMESTAMP() - INTERVAL 2 MINUTE
);