我目前使用以下查询在每次插入时增加第三列 count
。
$DB2->query("INSERT INTO relations (item_ID,tag_ID,count)
SELECT '$ID', '$tag_id', MAX(count) + 1
FROM relations
WHERE tag_ID = '$tag_id';");
问题是当表中没有行并且我尝试插入时,Max(count) + 1 只是空值。我试过将默认值定义为零但仍然为空。该列在第一次插入时应为 1
。
我如何更改查询,如果先插入,则 count
为 1。我不想之前执行选择查询,因为此代码处于循环中。
最佳答案
添加一个 ifnull(...,1)
"INSERT INTO relations (item_ID,tag_ID,count)
SELECT '$ID', '$tag_id', ifnull(MAX(count) + 1,1)
FROM relations
WHERE tag_ID = ''$tag_id';");
关于mysql - MAX(count) + 1 插入时,MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39002568/