MySQL如何在单个查询中执行if exists增量

Nic*_*ick 6 mysql sql

我只希望有一张桌子可以在白天存储一些事件.

给出一张表:

create table totals (
    entryday date,
    total int(11) default 0 not null,
    primary key (entryday) );
Run Code Online (Sandbox Code Playgroud)

如何编写一个增量的简单查询,但创建一个必要的?

我试过这个 - 但它没有递增(它保持在1):

REPLACE totals SET total = total + 1, entryday = "08-01-11"
Run Code Online (Sandbox Code Playgroud)

显然,这可以在2个查询中完成,但是它通过JDBC调用并且可以多次调用,因此1个查询会更好.

dka*_*arp 22

你可能想要ON DUPLICATE KEY:

INSERT INTO totals (entryday, total)
VALUES ("08-01-11", 1)
ON DUPLICATE KEY UPDATE total = total + 1
Run Code Online (Sandbox Code Playgroud)

total如果该日期尚未存在行,则将"08-01-11"设置为1,如果该行已增加total1,则将其设置为1.