我有一个包含列rank
的表格
rank
1
2
3
4
5
6
7
8
当我删除5号时,我希望5以上的数字下降1号。所以6 = 5 7 = 6 8 = 7
$start_rank = singleSelectQuery('SELECT rank FROM menu WHERE menuID='.$menuID.'');
$update_rank = Query("UPDATE menu SET rank='rank - 1' WHERE partnerID=". $partnerID ." AND rank>".$start_rank['rank']);
此代码不更新数字,我不知道我做错了什么:)
哦,我没有任何错误......
我做错了什么?
修改
当我回复update_rank我得到:
UPDATE menu SET rank='rank - 1' WHERE partnerID=1 AND rank>5)
答案 0 :(得分:2)
您的语法错误:rank='rank - 1'
应该是
rank=rank - 1
。
同样领先的.")"
也不应该存在。
答案 1 :(得分:1)
你可以试试这个 -
update menu set rank=(rank - 1) where rank > 5
答案 2 :(得分:1)
假设排名是整数字段,则不应引用您的计算rank-1
UPDATE menu SET rank= rank - 1 WHERE ....