如何在mysql中进行原子更新和选择查询?

如何在mysql中进行原子更新和选择查询?,mysql,Mysql,我有一个包含三列的表-id、name和num。如果num大于0,我想基于name选择id,并在同一个sql语句中减少num-我该怎么做?我需要以某种方式确保以下两种陈述: select id from table where name='someValue' ; update table set num=num-1; 将作为原子操作执行。我该怎么做 update table set num=num-1 where name='somevalue' and num>0 如果num大于0

我有一个包含三列的表-id、name和num。如果num大于0,我想基于name选择id,并在同一个sql语句中减少num-我该怎么做?我需要以某种方式确保以下两种陈述:

select id from table where name='someValue' ; update table set num=num-1; 
将作为原子操作执行。我该怎么做

update table set num=num-1 where name='somevalue' and num>0
如果num大于0且name等于“somevalue”,则此查询将num减少1