我在这里遇到了问题。即时更新名称,其中B的价值最大。
所以结果是
B | name
---|------
1 |
2 |
3 | YES
但是当列B更改值时,问题是列名称,行值3仍然具有值。
B | name
---|------
1 |
4 | YES
3 | YES
结果应该是。
B | name
---|------
1 |
4 | YES
3 |
如果
B | name
---|------
0 |
0 |
0 |
然后
B | name
---|------
0 |
0 |
0 |
如果,
B | name
---|------
4 |
4 |
2 |
然后
B | name
---|------
4 | YES
4 | YES
2 |
这就是我想要的。
我只使用这个简单的代码。
$sql3 = "UPDATE products SET name='YES' ORDER BY B DESC";
答案 0 :(得分:0)
我想你想要更新表中B列最高值的行?你肯定需要一个" WHERE"子句,但您还需要知道该列中的最高值。为什么不首先查询数据库以从列B中检索最高值?
$maxvalue = "SELECT `B` FROM products ORDER BY `B` DESC LIMIT 1"
然后插入数据库WHERE列B等于这个值?
"UPDATE products SET name='YES' WHERE B = $maxvalue"
这不是完整的代码,只是概念性的。我会清理它并编辑这个答案......
答案 1 :(得分:-1)
您必须每次都运行UPDATE products set name = '';
:
UPDATE products set name = 'YES'
WHERE B > 0
ORDER BY B DESC