MySQL插入条件日期时间
我想知道是否可以在一个查询中插入基于特定日期/时间的记录,而无需先选择它 例如: 我只想在2分钟前没有记录时插入 这将如何实现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:要
提前感谢使用以下语句,而不是
插入到表\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
);