首页 > Mysql insert 判断插入数据

Mysql insert 判断插入数据

# 如何一条插入语句实现当 `last` 表中不存在数据时,插入一条记录,若存在则不进行插入操作
# 请问以下语句有什么好的方法进行简写

INSERT INTO `last` (`LAST_TIME`) SELECT
    0
FROM
    (SELECT 0) t
WHERE
IF (
    EXISTS (SELECT id FROM last LIMIT 0, 1),
    FALSE,
    TRUE
 );

01.这不,最简单就是先查询,如果查到这条数据,就不插入,否则插入,简单易懂。

02.另外的方法就是管他三七二十一,插入,再合并重复项;

03.我看了一下楼上的replace into,这个好像是可行的;


这样如何:

INSERT INTO `last` SELECT 0 FROM DUAL WHERE NOT EXISTS (SELECT 0 FROM `last`);

使用 replace into。


INSERT INTO last(LAST_TIME) SELECT 0 FROM DUAL WHERE NOT EXISTS (SELECT 0 FROM last);
早在3年前,就有人提过这个问题了。
http://t.qq.com/p/t/46713101158557

【热门文章】
【热门文章】